WPF 遍历控件listview中的checkbox控件
程序员文章站
2022-07-13 23:03:45
...
1、获取控件中子控件方法
/// <summary>
/// 获得指定元素的所有子元素(这里需要有一个从DataTemplate里获取控件的函数)
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="obj"></param>
/// <returns></returns>
public List<T> GetChildObjects<T>(DependencyObject obj, string name) where T : FrameworkElement
{
DependencyObject child = null;
List<T> childList = new List<T>();
for (int i = 0; i <= VisualTreeHelper.GetChildrenCount(obj) - 1; i++)
{
child = VisualTreeHelper.GetChild(obj, i);
if (child is T && (((T)child).Name == name || string.IsNullOrEmpty(name)))
{
childList.Add((T)child);
}
childList.AddRange(GetChildObjects<T>(child, ""));//指定集合的元素添加到List队尾
}
return childList;
}
2、遍历listvew中chekbox调用方法
List<CheckBox> cks = GetChildObjects<CheckBox>(this.ListView_train, "checkBox");
foreach (var item in cks)
{
item.Visibility = System.Windows.Visibility.Visible;
}
上一篇: ElementUI之表格多选框使用
下一篇: wpf的样式与资源