我有一个正常的数据绑定情况,我的底层问题对象属性绑定到devexpress XtraGrid.GridControl中的列。但是,我有一个文本属性采用“{Question | True},{Question | False}”的形式。这些必须映射到网格中的复选框(可能每个属性有多个)。是否可以使用数据绑定将此字符串属性直接绑定到单元格,提供复选框编辑,可能使用CheckedComboBox?我想我在绑定过程中需要一个中间步骤来将原始字符串映射到复选框,然后从复选框返回到字符串。
否则我当前的想法是创建另一层对象,其中包含每个复选框选项的新对象,但是如果我能以某种方式使用从上面的文本到CheckComboBox中的复选框的映射来中断默认绑定过程我能够直接绑定到底层对象。
答案 0 :(得分:0)
如果我理解你,我认为你应该改变你的问题对象 包含bool属性。 Bool属性被绑定到网格作为复选框,因此它将自动运行。 我知道你对该属性的真正价值应该是字符串" {问题|真实}" 所以你可以这样设置那个属性:
private string question;
private bool questionBool;
public bool QuestionBool{
get{return questionBool;}
set{
if(value)
question = "{Question|True}"};
else
question = "{Question|False}";
questionBool = value;
}