如何从Telerik Grid中成功获取值?多种尝试方案均未生效求解
Telerik Grid 选中行取值解决方案
可直接使用的代码
普通绑定列取值(非模板列)
如果你的PRNO列是默认绑定列,使用以下代码即可取值:
if (Item.Selected) { // 请确认PRNO和对应列的UniqueName属性完全一致,区分大小写 string prNo = Item["PRNO"].Text.Trim(); }
模板列取值
如果PRNO是模板列,列内部放置了ID为PRNO的TextBox控件,使用以下代码:
if (Item.Selected) { TextBox prNoTextBox = Item["PRNO"].FindControl("PRNO") as TextBox; if(prNoTextBox != null) { string prNo = prNoTextBox.Text.Trim(); } }
常见错误排查
- 检查代码执行时机:不要在Page_Load的
!IsPostBack分支中执行取值逻辑,建议放在RadGrid的ItemDataBound事件、行选中事件或者页面按钮的点击回发事件中执行 - 确认列的UniqueName配置和代码中引用的名称完全匹配
- 编辑状态下取值需先判断当前行
IsInEditMode属性为true,再取对应编辑控件的值
提问人原始尝试内容
我们尝试了多种方法从Telerik Grid中取值。
但始终无法成功获取到对应的值。
尝试过的代码:
if (Item.Selected) { string id = Item["PRNO"].Text; string sump = Item("ColumnUniqueName").Controls(0); string Value = (Item["PRNO"].Controls[0] as Textbox).Text; string firstName = (item["PRNO"].FindControl("PRNO") as Textbox).Text; }

以上就是我们目前尝试过的所有取值方式。
内容的提问来源于stack exchange,提问作者Jerin Johnson
相关产品推荐
相关产品推荐

