将数据模板复选框设置为三层
本文关键字:三层 设置 数据 复选框 | 更新日期: 2023-09-27 18:17:47
我想让我的datatemplate中的复选框有三个属性,我实现了一个函数来设置listview列的datatemplate作为复选框,但我希望它允许三个属性
public DataTemplate SampleTemplate()
{
DataTemplate dt = new System.Windows.DataTemplate();
dt.DataType = typeof(bool);
FrameworkElementFactory fef = new FrameworkElementFactory(typeof(CheckBox));
Binding bd = new Binding("EnabledThreading");
fef.SetBinding(CheckBox.IsCheckedProperty, bd);
dt.VisualTree = fef;
return dt;
}
设置相应的属性,大致如下:
fef.SetValue(CheckBox.IsThreeStateProperty, true);
(如果您没有注意到,FrameworkElementFactory
已弃用)
CheckBox有一个IsChecked属性,它是一个可空的布尔值,这意味着它可以有三个可能的值- true, false和null。为每个实例设置合适的值。
您还需要将CheckBox的IsThreeState属性设置为true