Encontrar una casilla de verificación particular de la lista de casillas de verificación en wpf
Frecuentes
Visto 451 veces
0
Mi código es el siguiente
<ListBox x:Name="lstbxRefMarket" Margin="5,5,5,5" BorderThickness="0" Height="100" VerticalAlignment="Stretch">
<ListBox.ItemTemplate>
<HierarchicalDataTemplate>
<CheckBox Name="chkbxRefMarket" Content="{Binding Market}" CommandParameter="{Binding MarketId}" Tag="{Binding MarketId}" IsChecked="{Binding Checked}" Checked="chkbxRefMarket_Checked" Unchecked="chkbxRefMarket_Unchecked" Foreground="Blue"/>
</HierarchicalDataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Ahora, en el código detrás, necesito desmarcar la casilla de verificación particular con MarketId como 8 de la lista chkbxRefMarket. Como puede ver en la casilla de verificación del código, tendrá CommandParameter, Tag as MarketId.
¿Cómo puedo encontrar la casilla de verificación particular con esa identificación de mercado en la lista?
1 Respuestas
0
¿Por qué no simplemente encontrar el artículo correcto y establecer su Checked
propiedad. El CheckBox asociado está vinculado a esa propiedad y se desactivará automáticamente.
El siguiente código asume que su clase de elemento de datos es MyItem
.
IEnumerable<MyItem> items = lstbxRefMarket.Items.OfType<MyItem>();
MyItem item = items.FirstOrDefault(i => i.MarketId == 8);
if (item != null)
{
item.Checked = false;
}
contestado el 22 de mayo de 12 a las 10:05
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas c# wpf checkbox or haz tu propia pregunta.