ComboBox.IsEditable Propriedade

Definição

Obtém ou define um valor que habilita ou desabilita a edição do texto na caixa de texto do 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 da propriedade

Boolean

true se o ComboBox puder ser editado; caso contrário, false. O padrão é false.

Exemplos

Os exemplos a seguir criam ComboBox controles que contêm imagens como itens em vez de texto. Se a IsEditable propriedade estiver definida como true, o TextBox valor será exibido retornado pelo método da ToString imagem. Para evitar um TextBox texto inesperado, use o texto e TextSearch.TextPath as TextSearch.Text propriedades para atribuir texto a ser exibido.

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

Outra solução é usar a DisplayMemberPath propriedade. O controle suspenso do ComboBox não exibirá as imagens, mas exibirá o texto atribuído.

O exemplo a seguir mostra como usar 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>

Comentários

As IsEditable propriedades e as IsReadOnly propriedades especificam como se ComboBox comporta quando o usuário faz um dos seguintes procedimentos:

  • Insere uma cadeia de caracteres para selecionar um item no ComboBox.

  • Insere uma cadeia de caracteres que não corresponde a um item no ComboBox.

  • Seleciona parte da cadeia de caracteres que está na caixa de texto.

  • Copia ou cola um valor na caixa de texto.

A tabela a seguir descreve as ações que o usuário pode e não pode executar, dependendo dos valores de IsEditable e IsReadOnly.

IsReadOnly é true IsReadOnly é false
IsEditable é true - Não é possível selecionar um item inserindo ComboBox uma cadeia de caracteres.
- Não é possível inserir uma cadeia de caracteres que não corresponda a um item no ComboBox.
- Pode selecionar parte da cadeia de caracteres na ComboBox caixa de texto.
- Pode copiar a cadeia de caracteres na ComboBox caixa de texto, mas não pode colar uma cadeia de caracteres na ComboBox caixa de texto.
- Pode selecionar um item inserindo ComboBox uma cadeia de caracteres.
- Pode inserir uma cadeia de caracteres que não corresponde a um item no ComboBox.
- Pode selecionar parte da cadeia de caracteres na ComboBox caixa de texto.
- Pode copiar ou colar a cadeia de caracteres na ComboBox caixa de texto.
IsEditable é false - Pode selecionar um item inserindo ComboBox uma cadeia de caracteres.
- Não é possível inserir uma cadeia de caracteres que não corresponda a um item no ComboBox.
- Não é possível selecionar parte da cadeia de caracteres ComboBoxno .
- Não é possível copiar ou colar a cadeia de caracteres no ComboBox.
- Pode selecionar um item inserindo ComboBox uma cadeia de caracteres.
- Não é possível inserir uma cadeia de caracteres que não corresponda a um item no ComboBox.
- Não é possível selecionar parte da cadeia de caracteres ComboBoxno .
- Não é possível copiar ou colar a cadeia de caracteres no ComboBox.

Quando IsEditable é igual a false, o ComboBox usa um ContentPresenter para exibir o item selecionado no momento; quando IsEditable é igual a true, um TextBox é usado para essa finalidade em vez disso. Observe que apenas um TextBox texto sem formatação é exibido e que pode ComboBoxItem incluir conteúdo de texto não simples, como imagens.

Informações da propriedade de dependência

Campo Identificador IsEditableProperty
Propriedades de metadados definidas como true Nenhum

Aplica-se a