ComboBox.IsEditable Property
[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]
Gets or sets a value that enables or disables editing of the text in text box of the ComboBox.
Namespace: System.Windows.Controls
Assembly: PresentationFramework (in PresentationFramework.dll)
XMLNS for XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation
<object IsEditable="bool" .../>
Property Value
Type: System.Booleantrue if the ComboBox can be edited; otherwise false. The default is false.
The IsEditable and IsReadOnly properties specify how the ComboBox behaves when the user does one of the following:
Enters a string to select an item in the ComboBox.
Enters a string that does not correspond to an item in the ComboBox.
Selects part of the string that is in the text box.
Copies or pastes a value into the text box.
The following table describes the actions the user can and cannot take, depending on the values of IsEditable and IsReadOnly.
| IsReadOnly is true | IsReadOnly is false |
|---|---|---|
IsEditable is true | ||
IsEditable is false |
When IsEditable is equal to false, the ComboBox uses a ContentPresenter to display the currently selected item; when IsEditable is equal to true, a TextBox is used for this purpose instead. Note that a TextBox only displays plain text, and that a ComboBoxItem may include non-plain text content, such as images.
The following examples create ComboBox controls that contain images as items instead of text. If the IsEditable property is set to true, the TextBox displays the value returned by the image's ToString method. To avoid a TextBox with unexpected text, use the TextSearch.Text and TextSearch.TextPath properties to assign text to be displayed.
<ComboBox IsEditable="true" TextSearch.TextPath="Name"> <Image Name="Cat" Source="data\cat.png"/> <Image Name="Dog" Source="data\dog.png"/> <Image Name="Fish" Source="data\fish.png"/> </ComboBox>
<ComboBox IsEditable="true"> <Image TextSearch.Text="Cat" Source="data\cat.png"/> <Image TextSearch.Text="Dog" Source="data\dog.png"/> <Image TextSearch.Text="Fish" Source="data\fish.png"/> </ComboBox>
Another solution is to use the DisplayMemberPath property. The drop-down control of the ComboBox will not display the images but will display the text you assigned.
The following example shows how to use DisplayMemberPath.
<ComboBox IsEditable="true" DisplayMemberPath="Name"> <Image Name="CAT" Source="data\cat.png"/> <Image Name="DOG" Source="data\dog.png"/> <Image Name="FISH" Source="data\fish.png"/> </ComboBox>
Windows 8 Consumer Preview, Windows Server 8 Beta, Windows 7, Windows Server 2008 SP2, Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.