假设有一个datagrid
我现在想得到我当前所选的行的某一列的值,比如datagrid有3列,分别是id,name,number,然后再没一行前面有一个编辑按钮
我选中想得到我选中的其中一行的数据,以便进行更新操作,请问该如何写,上网查了下,有人这么写:
int ID = (int) datagrid.DataKeys[(int) e.Item.ItemIndex];
string name = ((TextBox)e.Item.Cells[1].Controls[0]).Text;
但我试了会出现System.InvalidCastException: 指定的转换无效
如何换成string name = (e.Item.Cells[1].Controls[0]).ToString();
则name的值是System.Web.UI.DataBoundLiteralControl
请问我该如何得到具体的正确值
我现在想得到我当前所选的行的某一列的值,比如datagrid有3列,分别是id,name,number,然后再没一行前面有一个编辑按钮
我选中想得到我选中的其中一行的数据,以便进行更新操作,请问该如何写,上网查了下,有人这么写:
int ID = (int) datagrid.DataKeys[(int) e.Item.ItemIndex];
string name = ((TextBox)e.Item.Cells[1].Controls[0]).Text;
但我试了会出现System.InvalidCastException: 指定的转换无效
如何换成string name = (e.Item.Cells[1].Controls[0]).ToString();
则name的值是System.Web.UI.DataBoundLiteralControl
请问我该如何得到具体的正确值
解决方案 »
- asp.net 数据导出到WORD的小例子
- 高手给看看,真没办法了,不知道是服务器问题还是程序
- gridview.databind()后,在如何再手动添加新列?
- 新人,遇到难题了,如何让派生于父类的页面继承JS脚本。功力不够,一点办法也没有,一百分,一百分,一百分,相赠
- 如何禁止页面被直接访问?
- 我如何将FreeTextBox中的大文本放到Oracle数据库中?
- 思归大侠请进:还是保持ViewState的问题
- EXCEL导入到DATASET中时总是说“外部表不是预期的格式。”???
- 超级郁闷问题
- 很奇怪数据库里的数据不一致
- 高分请教:急:动态创建的模板列,如何得到其下拉列表框选择的值。动态创建了8列,为何其列数没有增加8。●●●●
- 没分的了,就一百,问个问题,大家都进来看一下吧!·
<asp:datagrid datakeyfield=id ...
int id = Int32.Parse(datagrid.DataKeys[e.Item.ItemIndex].ToString());
方法2:
注意第一列是Cell[0];
string name = ((TextBox)e.Item.Cells[0].Controls[0]).Text;
注意第一列是Cell[0];
string name =e.Item.Cells[0].Text;
<edititemtemplate>
<asp:TextBox Width="70" id="b" Text='<%#DataBinder.Eval(Container.DataItem,"fwcdate1")%>' runat="server"></asp:TextBox></edititemtemplate>
这种去绑定数据的话,还是取不到数据,取到的数据都是''
string name = ((TextBox)e.Item.Cells[0].Controls[0]).Text;或
string name = ((TextBox)e.Item.Cell[0].FindControl("b")).Text;
添加、删除、修改都在Table上做保险些