2012-04-05 73 views
0

有没有办法获得RadGridView中计算列的值?如何访问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) 

回答

2

首先,确保每列被命名为与UniqueName。

然后通过每个网格项目通过迭代时使用的代码可以访问文本:(FOR ASP.NET AJAX)

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

(FOR 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。我留下了两个答案。

+0

这不适合我。这可能是绑定完成的方式? – Omar 2012-04-06 13:37:43

+0

我声明为: - 使用我现有数据库中的表(int,double) – nurgent 2012-04-06 13:42:43

+0

矿用户在用户选择从下拉菜单中添加新计算列后,通过代码添加。网格绑定到我们从数据库中获取的一系列项目。我尝试'item ['CalcColName']'它返回null。 'item'只包含我们的数据类的成员。 – Omar 2012-04-06 13:45:37

相关问题