Compartir vía


ComboBox.IsEditable Propiedad

Definición

Obtiene o establece un valor que habilita o deshabilita la edición de texto en el cuadro de texto de ComboBox.

public:
 property bool IsEditable { bool get(); void set(bool value); };
public bool IsEditable { get; set; }
member this.IsEditable : bool with get, set
Public Property IsEditable As Boolean

Valor de propiedad

Boolean

true si se puede editar el control ComboBox; de lo contrario, false. De manera predeterminada, es false.

Ejemplos

En los ejemplos siguientes se crean ComboBox controles que contienen imágenes como elementos en lugar de texto. Si la IsEditable propiedad se establece trueen , TextBox muestra el valor devuelto por el método de ToString la imagen. Para evitar un TextBox objeto con texto inesperado, use las TextSearch.Text propiedades y TextSearch.TextPath para asignar texto que se va a mostrar.

<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>

Otra solución consiste en usar la DisplayMemberPath propiedad . El control desplegable de ComboBox no mostrará las imágenes, pero mostrará el texto que asignó.

En el ejemplo siguiente se muestra cómo utilizar 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>

Comentarios

Las IsEditable propiedades y IsReadOnly especifican cómo se comporta cuando ComboBox el usuario realiza una de las siguientes acciones:

  • Escribe una cadena para seleccionar un elemento en .ComboBox

  • Escribe una cadena que no corresponde a un elemento de .ComboBox

  • Selecciona parte de la cadena que se encuentra en el cuadro de texto.

  • Copia o pega un valor en el cuadro de texto.

En la tabla siguiente se describen las acciones que el usuario puede realizar y no puede realizar, en función de los valores de IsEditable y IsReadOnly.

IsReadOnly es true IsReadOnly es false
IsEditable es true - No se puede seleccionar un elemento en el ComboBox escribiendo una cadena.
- No se puede escribir una cadena que no se corresponda con un elemento de .ComboBox
- Puede seleccionar parte de la cadena en el cuadro de ComboBox texto.
- Puede copiar la cadena en el ComboBox cuadro de texto, pero no puede pegar una cadena en el cuadro de ComboBox texto.
- Puede seleccionar un elemento en el ComboBox escribiendo una cadena.
- Puede escribir una cadena que no se corresponda con un elemento de .ComboBox
- Puede seleccionar parte de la cadena en el cuadro de ComboBox texto.
- Puede copiar o pegar la cadena en el cuadro de ComboBox texto.
IsEditable es false - Puede seleccionar un elemento en el ComboBox escribiendo una cadena.
- No se puede escribir una cadena que no se corresponda con un elemento de .ComboBox
- No se puede seleccionar parte de la cadena en .ComboBox
- No se puede copiar ni pegar la cadena en .ComboBox
- Puede seleccionar un elemento en el ComboBox escribiendo una cadena.
- No se puede escribir una cadena que no se corresponda con un elemento de .ComboBox
- No se puede seleccionar parte de la cadena en .ComboBox
- No se puede copiar ni pegar la cadena en .ComboBox

Cuando IsEditable es igual a false, ComboBox usa un ContentPresenter objeto para mostrar el elemento seleccionado actualmente; cuando IsEditable es igual a true, TextBox se usa para este propósito en su lugar. Tenga en cuenta que un TextBox solo muestra texto sin formato y que un ComboBoxItem puede incluir contenido de texto no sin formato, como imágenes.

Información sobre propiedades de dependencia

Campo identificador IsEditableProperty
Propiedades de metadatos establecidas en true Ninguno

Se aplica a