2009-03-20 49 views
6

Estoy usando dos controles ListBox en mi ventana WPF que son idénticos (idénticos = ItemSource tanto ListBox es igual y que se ven iguales) y el modo de selección en los ListBoxes está configurado para Múltiple.Seleccionar elementos en un cuadro de lista usando C#

Deja llamada los ListBoxes LB1 y LB2, por el momento, ahora cuando hago clic en un elemento de LB1, quiero que el mismo artículo en LB2 a ser seleccionado, es decir, de forma automática si selecciono 3 artículos en LB1 utilizando Shift + Haga clic en o Ctrl + Haga clic en para obtener los mismos elementos en LB2 seleccione.

Han cavado las propiedades del Listbox como SelectedItems, SelectedIndex etc. pero no hubo suerte.

Respuesta

9

lugar un evento SelectionChanged en su primer cuadro de lista

LB1.SelectionChanged += LB1_SelectionChanged; 

A continuación, implemente el método SelectionChanged así:

void LB1_SelectionChanged(object sender, SelectionChangedEventArgs e) 
{ 
    LB2.SelectedItems.Clear(); 
    foreach(var selected in LB1.SelectedItems) 
    { 
     LB2.SelectedItems.Add(selected); 
    } 
} 
+0

Hola, Muchas gracias, su ayuda es de agradecer, el fragmento de código que me ha dado funciona como un hechizo. Saludos cordiales @nand –

+0

No hay problema ... me alegro de poder ayudarlo. :) – Arcturus

0

¿Has probado SetSelected?

listBox2.SetSelected(1, True) 

Puede utilizar de esta manera

private void DoLB2Selection() 
{ 
    // Loop through all items the ListBox. 
    for (int x = 0; x < listBox1.Items.Count; x++) 
    { 
     // Determine if the item is selected. 
     if(listBox1.GetSelected(x) == true) 
     // Deselect all items that are selected. 
     listBox2.SetSelected(x,true); 
    } 

utilizar los elementos seleccionados de LB1 como un índice en LB2

+0

Hola PoweRoy, Gracias por la respuesta, pero desafortunadamente WPF no expone la propiedad SetSelected para Listboxes. Intenté buscar en Google (setselected) pero no pude encontrar una solución y de ahí esta publicación Saludos cordiales @nand –

Cuestiones relacionadas