Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将多个布尔值绑定到单个WinForms复选框_C#_Winforms - Fatal编程技术网

C# 将多个布尔值绑定到单个WinForms复选框

C# 将多个布尔值绑定到单个WinForms复选框,c#,winforms,C#,Winforms,我有一个对象列表,比如汽车,我想绑定到一个WinForm 此WinForm的目的是编辑所有绑定车辆的通用属性,例如IsRoadWorthy 如何将复选框绑定到列表中所有汽车的.IsRoadWorthy属性,这样,如果所有汽车都适合道路行驶,则复选框.Checked属性为true,如果所有汽车都不适合道路行驶,则复选框.Checked属性为false,介于两者之间的任何内容,则复选框.Checked属性为“不确定” 注意:我知道我可以通过将Checkbox.ThreeState属性设置为false

我有一个对象列表,比如汽车,我想绑定到一个WinForm

此WinForm的目的是编辑所有绑定车辆的通用属性,例如IsRoadWorthy

如何将复选框绑定到列表中所有汽车的.IsRoadWorthy属性,这样,如果所有汽车都适合道路行驶,则复选框.Checked属性为true,如果所有汽车都不适合道路行驶,则复选框.Checked属性为false,介于两者之间的任何内容,则复选框.Checked属性为“不确定”


注意:我知道我可以通过将Checkbox.ThreeState属性设置为false,然后在代码中将Checkbox.state设置为不确定来限制用户设置不确定状态。

您可以使用Linq的扩展方法:

var cars = new List<Car>();

checkbox.CheckedState = (cars.All(c => c.IsRoadWorthy)) ? CheckState.Checked :
                        (cars.All(c => !c.IsRoadWorthy)) ? CheckState.Unchecked
                        CheckState.Indeterminate;
var cars=新列表();
checkbox.CheckedState=(cars.All(c=>c.IsRoadWorthy))?检查状态。已检查:
(cars.All(c=>!c.IsRoadWorthy))?检查状态。未检查
检查状态。不确定;

Title说的是
binding
,它是winform还是wpf?它是WinForms应用程序。这段代码应该放在事件链的哪个位置?Form.InitializeComponent()?