Pergunta

Eu estou escrevendo uma interface gráfica, C#, Visual Studio 2008, usando o Designer e WinForms.Eu tenho um controle de caixa de Combinação, e eu gostaria que ele apenas permite selecionar a partir das opções fornecidas e de não aceitar um usuário cadeia de caracteres inserida.Ele não parece ter uma propriedade só de Leitura, e a desativação dificulta a legibilidade do controle " (bem como impedindo a entrada do usuário-seleção).

Foi útil?

Solução

Set DropDownStyle para "DropDownList"

Outras dicas

Defina a propriedade ComboBox.DropDownStyle para ComboBoxStyle.DropDownList.

Outra forma simples de fazê-lo.

private void combobox1_KeyPress(object sender, KeyPressEventArgs e)
{
    e.Handled = true;
}

Use código semelhante ao seguinte para definir as opções permitidas e apenas as opções.

comboBox1.DropDownStyle = ComboBoxStyle.DropDownList;
comboBox1.Items.AddRange(new object[] {
    "One",
    "Two",
    "Three",
    "Four"});

Tente usar um DropDownListbox

A minha exigência : uma vez que o usuário dando uma entrada através de caixa de combinação, eles não podem mudar o valor antes de enviá-lo.Eles podem ler apenas esse valor.

Que por minha exigência de eu fazer as seguintes coisas.

1) Obter entrada a partir de utilizador através da caixa de combinação.
2) Copie o valor da caixa de combinação para uma caixa de texto(que é só de leitura e o invisível).
3) Falso a visibilidade de caixa de combinação.
4) Verdadeira a visibilidade de somente leitura caixa de texto.

Fazer isso com os eventos.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top