【问题标题】:How to access the values of the cells of calculated columns in RadGridView如何访问 RadGridView 中计算列的单元格的值
【发布时间】:2012-04-05 19:26:53
【问题描述】:

有没有办法在 RadGridView 中获取计算列的值?

我的代码中有一部分在其中迭代了 RadGridView 中显示的所有项目。计算列的值不存在。我想知道我怎样才能得到它们。

现在我正在迭代网格绑定到的项目集合。我正在使用 GridViewExpressionColumn 将此计算列添加到网格中。

编辑:

   GridViewColumn column = new GridViewExpressionColumn
                    {
                        UniqueName = columnViewModel.LayoutColumnId.ToString(),
                        Name = name,
                        Expression = expression,
                        IsReadOnly = isReadOnly,
                        ToolTipTemplate = CreateTooltip(columnViewModel.FormulaText),
                        IsSortable = false,
                        IsFilterable = false
                    };

    grid.Columns.Add(column)

【问题讨论】:

    标签: .net wpf telerik radgridview


    【解决方案1】:

    首先,确保每列都以 UniqueName 命名。

    然后在遍历每个网格项时,您可以使用以下代码访问文本:(对于 ASP.NET AJAX)

    foreach (GridDataItem DataItem in grid1.Items)
    {
        var CalculatedColumnText = DataItem["CalculatedColumn"].Text;
    }
    

    (用于 WPF/SILVERLIGHT)-from Telerik Forums

            var col = GridView1.Columns["CalculatedColumn"] as GridViewExpressionColumn;
            foreach (var GridItem in GridView1.Items)
            {                
                var cellValue = col.GetValueForItem(GridItem);
    
            }
    

    您可以将文本转换为您需要的任何数据类型。

    编辑:起初我认为它是 ASP.NET 而不是 WPF/Silverlight。我把两个答案都留下了。

    【讨论】:

    • 这对我不起作用。这可能是绑定完成的方式?
    • 我将我的声明为: - 使用我现有数据库中的表 (int, double)
    • 在用户从下拉菜单中选择添加新的计算列后,我通过代码添加。网格绑定到我们从数据库中获取的项目集合。我尝试item['CalcColName'] 它返回null。 item 只包含我们的数据类所具有的成员。
    • 您可以粘贴添加新计算列的代码吗?
    • 我添加了它。那里的变量基本上只是字符串。
    猜你喜欢
    • 2013-08-08
    • 1970-01-01
    • 1970-01-01
    • 2013-03-28
    • 1970-01-01
    • 1970-01-01
    • 2012-08-25
    • 1970-01-01
    • 2021-12-12
    相关资源
    最近更新 更多