【发布时间】:2016-07-20 17:42:52
【问题描述】:
我想在我的 RadGrid 中“隐藏”一列,并且仅在我处于编辑模式时才显示。我尝试将其移动到编辑项模板中,但这根本不起作用。
任何建议将不胜感激!
谢谢!
【问题讨论】:
我想在我的 RadGrid 中“隐藏”一列,并且仅在我处于编辑模式时才显示。我尝试将其移动到编辑项模板中,但这根本不起作用。
任何建议将不胜感激!
谢谢!
【问题讨论】:
喂……
“保罗寻求帮助的第三条法则 放弃并寻求建议后,您会在 5 分钟后发现晦涩难懂的答案。”
原来您将列设置为“Display=False”,但前提是您处于弹出或编辑表单模式,而不是内联。
希望对其他人有所帮助。
【讨论】:
即使您自己回答了这个问题,我想我还是会写一个答案来澄清一些事情。
您可以将 EditColumn 的默认值设置为 false,即使在 InPlace 编辑中也是如此。但是,由于 InPlace 编辑(为简单起见)需要 EditColumn 来显示保存或取消项目,因此保存编辑的数据变得更加困难。
话虽如此,您可以做到 - 但是您需要在项目上使用显式 CommandNames:
假设您想用您在 InPlace 编辑中插入的新值更新一行。然后确认按钮的 CommandName 将 HAVE 为“Update”才能正确获取。
综上所述,即使在 InPlace(编辑模式)中,保持 EditColumn 不变也会简单得多。
或者您可以为一列指定 EditTemplate 以加宽该列,添加执行更新和取消所需的两个按钮以及隐藏 EditColumn 以便不能同时执行多个 InPlaceEdit。 :)
我希望这对某人有所帮助,因为当我不得不将 InPlace 和 EditForms EditModes 合并到单个 RadGrid 上并且知道上述信息产生了 WORLD 的差异时,我自己也陷入了类似的境地。
【讨论】:
你可以试试这个:
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);
}}
【讨论】: