EnumEditBox Class
Represents an Enum edit box.
public class EnumEditBox : PartEditBoxBase<object>
- Inheritance:
- object Visual UIElement FrameworkElement Control PartEditBoxBase<object> object
Constructors
EnumEditBox()
Initializes an instance of the class.
public EnumEditBox()
Properties
EnumSortComparer
The IComparer<T> used to sort the enumeration values, or null to use default sorting.
public IComparer<Enum>? EnumSortComparer { get; set; }
Property Value
- IComparer<Enum>:
By default, enumeration values are sorted by the order in which the values are defined. When UseDisplayAttributes is
true, theDisplayAttribute.Order, if any, will be preferred over the definition order.
EnumType
The enumeration type.
HasPopupButtonWhenReadOnly
Indicates whether the control should display the popup button when the control is read-only.
protected override bool HasPopupButtonWhenReadOnly { get; }
Property Value
- bool:
trueif the control should display the popup button when the control is read-only; otherwise,false.
NullValueText
The text to display for a null value item when IsNullAllowed is true.
UseDisplayAttributes
Indicates whether enumeration values should be displayed using an associated DisplayAttribute, if any.
public bool UseDisplayAttributes { get; set; }
Property Value
- bool:
trueif enumeration values should be displayed using an associatedDisplayAttribute, if any; otherwisefalse. The default value isfalse.
Methods
ConvertToString(object?)
Converts the specified value to a string representation.
protected override string ConvertToString(object? valueToConvert)
| Parameter | Type | Description |
|---|---|---|
| valueToConvert | object | The value. |
Returns
- string:
The string representation of the specified value.
CreateIncrementalChangeRequest(IncrementalChangeRequestKind)
Creates an incremental change (spin) request.
protected override IncrementalChangeRequest<object> CreateIncrementalChangeRequest(IncrementalChangeRequestKind kind)
| Parameter | Type | Description |
|---|---|---|
| kind | IncrementalChangeRequestKind | The kind of request. |
Returns
- IncrementalChangeRequest<object>:
The incremental change (spin) request that was created.
GenerateParts()
Generates the parts for the edit box.
protected override IList<IPart> GenerateParts()
Returns
IsValidValue(object?)
Tests whether the specified value is valid.
protected override bool IsValidValue(object? value)
| Parameter | Type | Description |
|---|---|---|
| value | object | The value to examine. |
Returns
- bool:
trueif the value is valid; otherwise,false.
OnPropertyChanged(DependencyPropertyChangedEventArgs)
Invoked whenever the effective value of any dependency property on this FrameworkElement has been updated. The specific dependency property that changed is reported in the arguments parameter. Overrides System.Windows.DependencyObject.OnPropertyChanged(System.Windows.DependencyPropertyChangedEventArgs).
protected override void OnPropertyChanged(DependencyPropertyChangedEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | DependencyPropertyChangedEventArgs | The event data that describes the property that changed, as well as old and new values. |
ResetValue()
Resets the value to a default value.
protected override void ResetValue()
TryConvertFromString(string?, bool, out object?)
Tries to convert the specified text to a value.
protected override bool TryConvertFromString(string? textToConvert, bool canCoerce, out object? value)
| Parameter | Type | Description |
|---|---|---|
| textToConvert | string | The text. |
| canCoerce | bool | Whether the returned value should be coerced to fall within the allowed value range. |
| value | object | Returns the value for the specified text. |
Returns
- bool:
trueif the text was converted to a value successfully; otherwise,false.
Fields
EnumSortComparerProperty
Defines the EnumSortComparer property.
public static readonly DependencyProperty EnumSortComparerProperty
EnumTypeProperty
Defines the EnumType property.
public static readonly DependencyProperty EnumTypeProperty
NullValueTextProperty
Defines the NullValueText property.
public static readonly DependencyProperty NullValueTextProperty
UseDisplayAttributesProperty
Defines the UseDisplayAttributes property.
public static readonly DependencyProperty UseDisplayAttributesProperty
Inherited Members
- PartEditBoxBase<object>.ActivePartIndexProperty
- PartEditBoxBase<object>.CommitTriggersProperty
- PartEditBoxBase<object>.HasPopupProperty
- PartEditBoxBase<object>.InlinesProperty
- PartEditBoxBase<object>.InputScopeNameValueProperty
- PartEditBoxBase<object>.IntermediateValueProperty
- PartEditBoxBase<object>.IsArrowKeyPartNavigationEnabledProperty
- PartEditBoxBase<object>.IsEditableProperty
- PartEditBoxBase<object>.IsInputFilteringEnabledProperty
- PartEditBoxBase<object>.IsNonDefaultUsageContextProperty
- PartEditBoxBase<object>.IsNullAllowedProperty
- PartEditBoxBase<object>.IsPopupButtonVisibleProperty
- PartEditBoxBase<object>.IsPopupOpenProperty
- PartEditBoxBase<object>.IsReadOnlyProperty
- PartEditBoxBase<object>.IsSpinnerVisibleProperty
- PartEditBoxBase<object>.IsUndoEnabledProperty
- PartEditBoxBase<object>.PlaceholderTextProperty
- PartEditBoxBase<object>.PopupBackgroundProperty
- PartEditBoxBase<object>.PopupBorderBrushProperty
- PartEditBoxBase<object>.PopupPickerStyleProperty
- PartEditBoxBase<object>.SpinnerVisibilityProperty
- PartEditBoxBase<object>.SpinWrappingProperty
- PartEditBoxBase<object>.TextAlignmentProperty
- PartEditBoxBase<object>.UsageContextProperty
- PartEditBoxBase<object>.ValueProperty
- PartEditBoxBase<object>.CoerceValidValue(object)
- PartEditBoxBase<object>.Commit()
- PartEditBoxBase<object>.Commit(bool)
- PartEditBoxBase<object>.InvalidateParts()
- PartEditBoxBase<object>.IsTextInputAllowed(string)
- PartEditBoxBase<object>.OnApplyTemplate()
- PartEditBoxBase<object>.OnCreateAutomationPeer()
- PartEditBoxBase<object>.OnGotFocus(RoutedEventArgs)
- PartEditBoxBase<object>.OnIntermediateValueChanged(object, object)
- PartEditBoxBase<object>.OnIsKeyboardFocusWithinChanged(DependencyPropertyChangedEventArgs)
- PartEditBoxBase<object>.OnIsNullAllowedChanged(bool, bool)
- PartEditBoxBase<object>.OnKeyDown(KeyEventArgs)
- PartEditBoxBase<object>.OnLostFocus(RoutedEventArgs)
- PartEditBoxBase<object>.OnLostMouseCapture(MouseEventArgs)
- PartEditBoxBase<object>.OnMouseLeftButtonDown(MouseButtonEventArgs)
- PartEditBoxBase<object>.OnPopupOpened()
- PartEditBoxBase<object>.OnPreviewMouseUp(MouseButtonEventArgs)
- PartEditBoxBase<object>.OnPreviewTextInput(TextCompositionEventArgs)
- PartEditBoxBase<object>.OnValueChanged(object, object)
- PartEditBoxBase<object>.ProcessTextInput(string)
- PartEditBoxBase<object>.SelectAll()
- PartEditBoxBase<object>.UpdateIntermediateValueAndTextFromValue()
- PartEditBoxBase<object>.ActivePartIndex
- PartEditBoxBase<object>.CommitTriggers
- PartEditBoxBase<object>.CurrentSelectionLength
- PartEditBoxBase<object>.CurrentSelectionStartOffset
- PartEditBoxBase<object>.CurrentText
- PartEditBoxBase<object>.HasPopup
- PartEditBoxBase<object>.Inlines
- PartEditBoxBase<object>.InputScopeNameValue
- PartEditBoxBase<object>.IntermediateValue
- PartEditBoxBase<object>.IsArrowKeyPartNavigationEnabled
- PartEditBoxBase<object>.IsEditable
- PartEditBoxBase<object>.IsInputFilteringEnabled
- PartEditBoxBase<object>.IsNonDefaultUsageContext
- PartEditBoxBase<object>.IsNullAllowed
- PartEditBoxBase<object>.IsPopupButtonVisible
- PartEditBoxBase<object>.IsPopupOpen
- PartEditBoxBase<object>.IsReadOnly
- PartEditBoxBase<object>.IsSpinnerVisible
- PartEditBoxBase<object>.IsUndoEnabled
- PartEditBoxBase<object>.Parts
- PartEditBoxBase<object>.PlaceholderText
- PartEditBoxBase<object>.PopupBackground
- PartEditBoxBase<object>.PopupBorderBrush
- PartEditBoxBase<object>.PopupPickerStyle
- PartEditBoxBase<object>.ResetValueCommand
- PartEditBoxBase<object>.SmallDecrementValueCommand
- PartEditBoxBase<object>.SmallIncrementValueCommand
- PartEditBoxBase<object>.SpinnerVisibility
- PartEditBoxBase<object>.SpinWrapping
- PartEditBoxBase<object>.TextAlignment
- PartEditBoxBase<object>.UsageContext
- PartEditBoxBase<object>.Value
- PartEditBoxBase<object>.ValueChanged