我不确定我在这里缺少什么,但是我无法正确地将复选框绑定到列表。列表的其余属性绑定得很好,但复选框有问题。这就是我所拥有的:
在作为列表中每个对象的模板的类中,我有:
Property Process As New CheckBox
在MainWindow_Loaded事件中我有:
Dim ProcessCol As new DataGridCheckBoxColumn
ProcessCol.Header = "P?"
ProcessCol.IsReadOnly = False
...
InputGrid.ItemsSource = InputData 'Which is a list of my Order Allocation objects which contains the checkbox property
...
Dim ProcessBinding As New Binding("Process")
ProcessBinding.Mode = BindingMode.TwoWay
ProcessCol.Binding = ProcessBinding
...
InputGrid.Columns.Add(ProcessCol)
当我尝试填充此集合并查看项目时,我得到checkbox = nothing。我不确定我在这里缺少什么...我知道我离得太远......
编辑:我将属性更改为“new CheckBox”,现在我在列表项中得到一个initialzied复选框对象为“System.Windows.Controls.CheckBox内容:IsChecked:False,在这种情况下应该是真的。所以可能更接近一步,但仍然没有。
答案 0 :(得分:0)
我在这里找到了答案:WPF: CheckBox in DataGrid
技术上不是我原来问题的答案,但它确实有效。我的类中没有checkbox属性,而是现在有一个布尔属性。该列仍然作为复选框列创建。有用。
如果列可以绑定到列表的chebox属性,我仍然有兴趣听到这个,但对我来说这个解决方案有效。