Usuário com melhor resposta
Combobox mostrar carro conforme preço selecionado

Pergunta
-
Tenho o seguinte código
List<Car> carList = new List<Car>();
Quando clicar em um botão ele vai enviar para combobox o valor 12500 que é o preço e o que será mostrado na combobox é Honda que é o nome do carro que custa 12500
carList.Add(new Car() { Name = "Ferrari", Price = 150000 });
carList.Add(new Car() { Name = "Honda", Price = 12500 });
carList.Add(new Car() { Name = "Toyota", Price = 11500 });
ComboBox cb = new ComboBox();
_cars.DisplayMemberPath = "Name";
_cars.ItemsSource = carList;
Como fazer??- Editado Jjunior75 segunda-feira, 11 de maio de 2009 18:54
Respostas
-
Uma maneira que testei e deu certo, foi utilizar um for na sua lista, verificar qual dos itens possui o mesmo preço e atribuir o valor da variável no for para o index de seu combobox.
Segue um exemplo:private void btn_Click(object sender, RoutedEventArgs e) { int intValor = 12500; for (int i = 1; i < lstCars.Count; i++) { if (lstCars[i].Price == intValor) { cbbCarros.SelectedIndex = i; } } }
No caso, você tem que declarar sua Lista fora dos métodos.
Espero ter ajudado.
"Se sua pergunta foi respondida, por favor, marque como resposta."- Marcado como Resposta Lucas DefacioModerator segunda-feira, 22 de junho de 2009 11:35
Todas as Respostas
-
Uma maneira que testei e deu certo, foi utilizar um for na sua lista, verificar qual dos itens possui o mesmo preço e atribuir o valor da variável no for para o index de seu combobox.
Segue um exemplo:private void btn_Click(object sender, RoutedEventArgs e) { int intValor = 12500; for (int i = 1; i < lstCars.Count; i++) { if (lstCars[i].Price == intValor) { cbbCarros.SelectedIndex = i; } } }
No caso, você tem que declarar sua Lista fora dos métodos.
Espero ter ajudado.
"Se sua pergunta foi respondida, por favor, marque como resposta."- Marcado como Resposta Lucas DefacioModerator segunda-feira, 22 de junho de 2009 11:35
-
Não funcionou, acredito que não esteja declarando a lista corretamente
Erro: ItemCLIENTE(i).CODIGO is not member of system.array
Private sub ... Dim ItemCLIENTE As List(Of summer.WEBSRVpedidos.VENDEDORES()) Dim intValor As Integer = e.Result.Item(0).COD_VENDEDOR() For i As Integer = 1 To ItemCLIENTE.Count - 1 If ItemCLIENTE(i).CODIGO = intValor Then CBO_VENDEDORES.SelectedIndex = i End If Next end sub
-
Junior.
Em meu exemplo eu utilizei a lista carList que você mencionou. Depois eu verifico na lista se o valor recebido na variável intValor é igual ao valor da linha i da lista. Caso seja, eu atribuo a propriedade SelectedIndex com o valor da lista. A própria lista irá popular o combobox, logo a posição na lista será igual a posição no combobox.
Utilize o carList para fazer esta verificação (a mesma lista que está populando o combobox).
Espero ter ajudado.
"Se sua pergunta foi respondida, por favor, marque como resposta." -