/// 获得指定元素的所有子元素(这里需要有一个从DataTemplate里获取控件的函数)
///
///
///
///
public List
GetChildObjects(DependencyObject obj, string name) where T : FrameworkElement
DependencyObject child = null;
List childList = new List();
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<
1、获取控件中子控件方法/// <summary> /// 获得指定元素的所有子元素(这里需要有一个从DataTemplate里获取控件的函数) /// </summary> /// <typeparam name="T"></typeparam> /// <param na...
如果 DataGrid
中
的行还未被加载,即 LoadingRow 事件未发生,那么针对此行的 GetCellContent() 是不可能得到东西的,只能为 null。
下面两种语法,只是变相的形式而已。
for (int i = 0; i < dgETL.Items.Count; i++) {
CheckBox
selec...
在项目开发
中
,遇到一大片的
CheckBox
控
件,需要实现全选、反选,一个个写是不太实际的,这时候,我们就可以选择用遍
历
控
件的方式来解决。
全选:遍
历
的
控
件是
CheckBox
,就给它赋值IsChecked= true
反选:遍
历
的
控
件是
CheckBox
,就让它的IsChecked值取反
Xaml的代码就不放出来了,就是一个Grid,Name="content",里面全是
CheckBox
,后面再...
在Win7的资源管理器
中
,如果我们选
中
【文件夹选项】->【查看】->【文件和文件夹】->【使用复选框以选择项】。则可通过列表项上的复选框实现多选,而不再需要按【Ctrl】或【Shift】键。
WPF
中
没有对应的
控
件,但是利用
WPF
我们可以比较容易实现此功能。讨论
首先,
CheckBox
的选
中
状态应该和
ListView
Item的选
中
状态保持一致,故需要将
CheckBox
的I...
在
WPF
实际项目开发的时候,经常会用到带
CheckBox
的TreeView,虽然微软在
WPF
的TreeView
中
没有提供该功能,但是微软在
WPF
中
提供强大的ItemTemplate模板功能和自定义样式,那我们可以自己写一个这样的
控
件供自己使用。
我自己写的这个比较简单。
首先写一个供TreeView使用的数据模型,并且实现INotifyPropertyChanged接口,用于向客户端(通常是...
在我的问卷调查系统
中
,每个groupbox对应一个题目,由于每个问卷的题目数目不统一,所以要遍
历
所有的groupbox
控
件(我这里的groupbox是动态生成的),在提交问卷时,需要保证每个题目都已作答,故需对选项进行遍
历
。
实现方法如下:
for(int i = 0; i < SinglegroupBoxes.Length; i++)
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(parent); i++)
DependencyObject child = VisualTreeHelper.GetChild(parent, i);
// 处理子
控
件...
其
中
,parent 是要遍
历
子
控
件的父
控
件,i 是子
控
件的索引位置,child 是子
控
件对象。
需要注意的是,这些方法只能遍
历
直接子
控
件,如果要遍
历
所有后代
控
件,可以使用递归算法。