在dategrid中无法进行更新操作,请高人指点!
Public Sub DataGrid1_Update(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs)
Dim txtname, txturl As TextBox
txtname = e.Item.Cells(1).Controls(0)
txturl = e.Item.Cells(2).Controls(0)
Dim sql As String
sql = "update sys_acl_object set object_name='" & txtname.Text & "',object_url='" & txturl.Text & "' where object_id='" & DataGrid1.DataKeys(CInt(e.Item.ItemIndex)) & "'"
Response.Write(sql)
Dim update1 As New GSXY.object.object1
update1.ExecuteSql(sql)
DataGrid1.EditItemIndex = -1
Call BindData()
End Sub
问题点数:0、回复次数:8Top
1 楼songxi238(夜梦幽)回复于 2004-09-04 12:50:38 得分 0
现在根本就取不到txtname.Text和 txturl.Text 的值Top
2 楼yistudio(阳光灿烂的日子)回复于 2004-09-04 12:58:47 得分 0
try
txtname = (TextBox)e.Item.Cells(1).Controls(1)
txturl = (TextBox)e.Item.Cells(2).Controls(1)
or use
txtname = (TextBox)e.Item.Cells(1).FindControl("TextBox1")
txturl = (TextBox)e.Item.Cells(2).FindControl("TextBox1")
Top
3 楼softchao(小款※人生就像大便, 往往努力了半天却只迸出几个屁 )回复于 2004-09-04 13:45:13 得分 0
txtname = (TextBox)e.Item.Cells(1).FindControl("TextBox1")
先找到模板里面的控件再取值
Top
4 楼tavor(毕业了,一个星星找工作,现在终于找到了,要转J2EE了)回复于 2004-09-04 14:00:50 得分 0
yeah, findcontrol may better,because maybe you can't determine it's the first control or notTop
5 楼sunshine5211314(〖sunshine〗)回复于 2004-09-04 14:06:59 得分 0
在你的DataGrid 中有没有UpdateCommand="DataGrid1_Update"Top
6 楼BillTuan()回复于 2004-09-04 14:07:34 得分 0
System.Web.UI.WebControls.DataGridItem dgi=this.DataGrid1.Items[e.Item.ItemIndex];
(dgi.FindControl("TextBox1") as System.Web.UI.WebControls.TextBox).Text才是你要的东东!Top
7 楼wangrenda(浪人)回复于 2004-09-04 14:09:19 得分 0
对先实例化,在取值,
Top
8 楼icecock(喜欢编程的狗)回复于 2004-09-04 14:49:40 得分 0
txtname = ctype(e.Item.Cells(1).Controls(0),TextBox)
txturl = Ctype(e.Item.Cells(2).Controls(0),TextBox)
Top




