Telerik RadGrid:仅在编辑模式下显示列?

时间:2016-07-20 17:42:52

标签: asp.net telerik

我想"隐藏"我的RadGrid中的一列,只有在我处于编辑模式时才显示。我尝试将其移动到编辑项目模板中,但这根本不起作用。

任何建议都将深表感谢!

谢谢!

3 个答案:

答案 0 :(得分:0)

... Oy公司

“保罗的第三定律要求帮助 在放弃并征求意见后5分钟,你会发现一个不起眼的答案。“

原来你将列设置为“Display = False”,但前提是你处于弹出或编辑表单模式,而不是内联。

希望它可以帮助别人。

答案 1 :(得分:0)

即使你自己回答了这个问题,我还是想写一个答案来澄清一些事情。

即使在InPlace编辑中,您也可以将EditColumn的默认值设置为false。但是,由于InPlace编辑(为了简单起见)要求EditColumn显示保存或取消项目,因此保存编辑数据要困难得多。

话虽如此,您可以这样做 - 但是您需要在项目上使用 显式 CommandNames:

假设您要使用在InPlace编辑中插入的新值更新一行。然后,确认按钮的CommandName将 HAVE 为" 更新"要正确地拿起来。

所有这一切都说,即使在InPlace(editmode)中,使EditColumn保持完整也会简单得多。

或者您可以为一列指定EditTemplate以扩大列,添加执行更新和取消所需的两个按钮以及隐藏EditColumn,以便不能同时执行多个InPlaceEdits。 :)

我希望这可以帮助某些人,因为当我不得不在一个RadGrid上同时使用InPlace和EditForms EditModes并且知道上述信息产生了 WORLD 差异时,我自己陷入了类似的情况。

答案 2 :(得分:-1)

您可以尝试以下方法:

var agtype = $telerik.$(atCell).text().trim();

if(agtype == ""Guaranty""){{
       var masterTableView = sender.get_masterTableView();
       var columnIndex = masterTableView.getColumnByUniqueName(""Amount"").get_element().cellIndex;
       masterTableView.showColumn(columnIndex);
}}