我需要以编程方式为驻留在WPF表单中的复选框创建绑定。因为复选框位于多次添加到表单的用户控件中,所以我不确定如何执行此操作。我已经为DevExpress RichEdit控件创建了一个绑定,该控件工作,然后修改了该复选框的代码,但它没有用。
我返回绑定的代码如下:
private Binding SetIsCorrectBinding(int row)
{
Binding binding = new Binding("DataModel.DetailList[" + row + "].IsCorrect")
{
Path = new PropertyPath("DataModel.DetailList[" + row + "].IsCorrect"),
Mode = BindingMode.TwoWay
};
return binding;
}
实现绑定的代码如下:
Binding cbBind = SetIsCorrectBinding(row);
detailRow.IsCorrect_cb.SetBinding(CheckBox.ContentProperty, cbBind);
无论我尝试什么,IsCorrect变量始终为false。 对此的任何帮助将不胜感激。
答案 0 :(得分:1)
请尝试下一个:
var xBinding = new Binding();
//a real instance of the object where the source property is defined
//it have to be the same instance which is defined in DataModel.DetailList
xBinding.Source = sourceInstance;
xBinding.Path = new PropertyPath("The_source_property_name");
xBinding.UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged;
xBinding.Mode = BindingMode.TwoWay;
//Use this instead the .SetBinding( , ) where the checkbox is the object to binded to
BindingOperations.SetBinding(checkbox, CheckBox.ContentProperty, xBinding);
请查看下一个解决方案here,我认为它可以为您提供更多信息。 如果您遇到代码问题,我很乐意提供帮助。 的问候,