Вот XAML:
<Grid x:Name="G">
<Grid.ColumnDefinitions>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
</Grid.ColumnDefinitions>
<CheckBox Grid.Column="0"></CheckBox>
<CheckBox Grid.Column="1" IsChecked="True"></CheckBox>
<CheckBox Grid.Column="2" IsChecked="True"></CheckBox>
<CheckBox Grid.Column="3"></CheckBox>
</Grid>
Я хочу удалить все CheckBox
в Grid
, что IsChecked
верно.
Итак, я написал код следующим образом:
var RemoveList=G.Children.OfType<CheckBox>().Where(Child => Child.IsChecked == true);
foreach (CheckBox CB in RemoveList.ToList())
{
G.Children.Remove(CB);
}
Я думаю, что мой код избыточен с помощью var RemoveList
и должен изменить его на List.
Я хочу найти способ, просто удалить UIElement только однимкод строки и заставляет меня узнать больше о лямбда.
Есть ли способ сделать это?Спасибо.