Defina a propriedade o DropDownStyle do controlo de caixa de combinação para DropDownList e, em seguida, escreva os primeiros caracteres do produto em que a caixa de combinação durante o tempo de execução. O item que está seleccionado a caixa de combinação não coincide com os caracteres que escrever. Se baseia o item que está seleccionado a caixa de combinação no último carácter que escreve. Por exemplo, se os produtos em que a caixa de combinação são vermelho, Carvalho e rosa, quando escreve ferries a caixa de combinação, o foco estiver no Carvalho em vez de rose.
Para contornar este problema, adicione o código que procura itens com todos os caracteres que escrever a caixa de combinação. O código também tem de seleccionar o item que se aproxime de todos os caracteres. Para limpar o texto de procura a intervalos regulares, utilize um temporizador de controlo. Para tal, siga estes passos:
No Microsoft Visual Studio .NET ou no Microsoft Visual Studio 2005, criar uma nova do Windows aplicação utilizando o Visual Basic. NET, Visual Basic 2005 ou Visual C#. NET.
Por predefinição, é criado o Form1.
A partir da caixa de ferramentas, arraste um temporizador ao Form1.
Na janela Propriedades, defina o activado propriedade como true.
Adicione a seguinte instrução à secção declaração de variável do código:
Visual Basic .NET ou Visual Basic 2005
Dim searchstr As String
O Visual C# .NET
string searchstr;
Adicione o seguinte código ao evento de carregamento do Form1:
Visual Basic .NET ou Visual Basic 2005
'set the timer interval and start the timer
Timer1.Interval = 1000
Timer1.Start()
O Visual C# .NET
//set the interval and start the timer
timer1.Interval =1000;
timer1.Start();
Adicione o seguinte código ao evento das marcas de escala de Timer1:
Visual Basic .NET ou Visual Basic 2005
'empty the string for every 1 seconds
searchstr = ""
O Visual C# .NET
//empty the string for every 1 seconds
searchstr="";
Adicione o seguinte código ao evento TeclaEmCima do ComboBox1:
Visual Basic .NET ou Visual Basic 2005
searchstr = searchstr & Chr(e.KeyValue)
' If the Search string is greater than 1 then use custom logic
If searchstr.Length > 1 Then
Dim index As Integer
' Search the Item that matches the string typed
index = ComboBox1.FindString(searchstr)
' Select the Item in the Combo
ComboBox1.SelectedIndex = index
End If
Visual C# .NET
searchstr = searchstr + Convert.ToChar(e.KeyCode);
// If the Search string is greater than 1 then use custom logic
if (searchstr.Length > 1)
{
int index;
// Search the Item that matches the string typed
index=comboBox1.FindString(searchstr);
// Select the Item in the Combo
comboBox1.SelectedIndex=index;
}
No Microsoft Visual Studio .NET ou no Microsoft Visual Studio 2005, criar uma nova do Windows aplicação utilizando o Visual Basic. NET, Visual Basic 2005 ou Visual C#. NET.
Por predefinição, é criado o Form1. Nota que tem de alterar o código de Visual Basic 2005. Por predefinição, o Visual Basic cria dois ficheiros do projecto quando cria um projecto de Windows Forms. Se o formulário é o nome Form1, os dois ficheiros que representam o formulário são denominados Form1.VB e Form1.Designer.vb. Tem de escrever o código no ficheiro Form1.VB. O Windows Forms Designer escreve o código no ficheiro Form1.Designer.vb. O Windows Forms Designer utiliza a palavra-chave parcial para dividir a aplicação do Form1 em dois ficheiros separados. Este comportamento impede que o código gerado pelo estruturador a ser intercalados com o código.
Para obter mais informações sobre novos melhoramentos de linguagem Visual Basic 2005, visite o seguinte Web site da Microsoft Developer Network (MSDN):
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 814362
Obrigado! Os seus comentários são utilizados para ajudar-nos a melhorar o conteúdo do nosso suporte. Para obter mais opções de assistência, visite a Home Page de Ajuda e Suporte.