【问题标题】:Retain the value entered in the cell of DevExpress Xtragrid保留在 DevExpress Xtragrid 的单元格中输入的值
【发布时间】:2010-01-22 06:39:27
【问题描述】:

我在我的 C#.net windows 应用程序中使用 DevExpress Xtragrid 控件。

我在网格的第一个单元格中输入了一些值,如果我转到第二个单元格,在第一个单元格中输入的值就会消失。

如何保留单元格中输入的值?

【问题讨论】:

    标签: devexpress xtragrid


    【解决方案1】:

    我假设您将其用于 gridView (Xtragrid) 中的未绑定列,第一步是确保转到列属性,并将 UnboundType 属性值更改为您将输入的数据类型进入该列,下面的示例使用double

    CustomUnboundColumnData 事件分配给您的gridView。确保您声明了一个类级别变量(在下面的代码示例中名为 _userEnteredData)来保存您输入到 gridView 中的值,然后添加以下代码,但请确保您更改名称以匹配您的 gridView 和变量名:

    类级变量声明:

    private double _userEnteredData = 0;

    现在活动:

    private void gridView1_CustomUnboundColumnData(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDataEventArgs e)
    {
        if (e.Column == gridColumn_YourColumn && e.IsSetData)
        {
            _userEnteredData = Convert.ToDouble(e.Value);
        }
        else if (e.Column == gridColumn_YourColumn && e.IsGetData)
        {
            e.Value = _userEnteredData;
        }
    }
    

    我希望这会有所帮助。

    您可以从这里获得更多详细信息: http://documentation.devexpress.com/#WindowsForms/CustomDocument1477

    【讨论】:

      【解决方案2】:

      可能性很小:

      • 检查已编辑列的 FieldName 属性。也许有一个错字,所以网格不会将您输入的值传递给底层数据源
      • 绑定到列的属性必须具有公共设置器。如果只有 getter,grid 也无法存储输入的值
      • 检查网格列中的 ColumnOptions.ReadOnly 属性 - 必须设置为 false

      希望对你有帮助

      【讨论】:

        猜你喜欢
        • 2012-09-07
        • 1970-01-01
        • 2012-02-07
        • 2012-09-13
        • 2018-03-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-12-29
        相关资源
        最近更新 更多