2010-12-21 85 views
3

我似乎无法找到一种方法来引用网格中的列中的值,在我的情况下,它是StatusId。基于此行中的单元格值,对于StatusId,我需要将方法“.Visible(???)”返回true或false。在网上的文档中找到答案会很好,但我一直无法做到。我很难相信我会成为第一个需要此功能的人。telerik mvc网格访问单元格数据来启用columns.Command

由于telerik论坛中没有人知道,我会非常感谢任何帮助。

.Columns(columns => { 
    columns.Command(commands => { 
    commands.Edit().ButtonType(ButtonType); 
    commands.Delete().ButtonType(ButtonType); 
}).Width(90).Visible(???); 

谢谢! AZee

回答

2

Visible设置控制列的可见性。如果设置为false,则该列将不会呈现。你可以尝试使用CellAction:使用Ajax绑定....例如,如果我想显示红色perticular单元格的文本颜色

.CellAction(cell => 
    { 
     if (cell.Column.Title == "Commands") 
     { 
      if (cell.DataItem.StatusId > 0) //check whether to hide the cell 
      { 
       cell.HtmlAttributes["style"] = "visibility:hidden"; 
      } 
     } 

    }) 
+0

感谢您的回复Korchev,但这不是我正在寻找...我正在寻找一种方法来不使用可见的设置为其列显示编辑和删除按钮。只需更换???对或错。我需要的是一种访问当前行上的单元格数据的方法,并基于该数据返回一个布尔值,从而不允许编辑或删除行。 – AZee 2010-12-22 15:28:45

0

上述方案行不通的。”即单元格文本=‘错误’,当网格第一次加载时,这个解决方案变得可用,但是当我在所述网格上应用一些Ajax动作(如过滤)时,我的Cell_Text再次变回其正常文本颜色....您是否有任何其他代码用于我特定场景