【问题标题】:XtraGrid checkEdit repository could not be checked/unchecked无法选中/取消选中 XtraGrid checkEdit 存储库
【发布时间】:2012-12-24 06:56:34
【问题描述】:

我已经使用 linq/LinqInstantFeedbackSource 填充了数据的 devexpress XtraGrid。 XtraGrid 有一个 checkEdit 存储库与表中名为 Status 的列绑定。状态列中的数据元素是位(0 或 1)。但是,由于某些未知原因,无法选择 checkEdit - 即我无法选中/取消选中它。可能的原因是什么??

【问题讨论】:

    标签: devexpress xtragrid


    【解决方案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; }
    }
    

    【讨论】:

    • 我已经改变了它,但它仍然无法正常工作。我只是使用 linq 提取数据并加入。会有什么影响吗?此外,该列的数据类型是位
    • @user758961 请提供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 { tc.MRN,deptName= dpt.deptName + " - " + dpt.roomNo,tc.isReturned}); gridTC.DataSource =tcs;
    猜你喜欢
    • 2021-02-12
    • 1970-01-01
    • 1970-01-01
    • 2014-09-16
    • 2012-06-01
    • 2015-10-29
    • 1970-01-01
    • 2010-09-16
    • 2012-09-20
    相关资源
    最近更新 更多