我使用linq / LinqInstantFeedbackSource对使用数据填充的XtraGrid进行了devexpress。 XtraGrid有一个checkEdit存储库绑定,其中包含一个名为Status的列。 “状态”列中的数据元素是位(0或1)。但是,由于某些未知原因,无法选择checkEdit - 即我无法检查/取消选中它。可能的原因是什么?
答案 0 :(得分:1)
原因是LinqInstantFeedbackSource是只读数据源。
<强>更新强>
据我所知,你使用匿名类型作为结果。 匿名类型的对象只有只读属性。修改它们是不可能的。这就是XtraGrid中没有编辑的原因。如果需要获取可编辑对象的集合,请不要使用匿名类型
您可以使用此代码,例如:
var tcs=
from tc in dc.TC
join dpt in dc.Departments on tc.DeptID equals dpt.DeptID
where tc.isReturned.Equals(0)
select new EditableObject {
MRN=tc.MRN,
DeptName=dpt.deptName + " - " + dpt.roomNo,
IsReturned= tc.isReturned
};
其中EditableObject
是:
public class EditableObject{
public string MRN { get; set; }
public string DeptName { get; set; }
public bool IsReturned { get; set; }
}