不知道怎么给标题命名了
数据库表:id,name
绑定到gridview,
gridview第一列绑定name;第二列文本框;第三列按钮,用来修改
修改按钮的CommandArgument绑定id
功能为:点击修改按钮,根据id修改name为文本框的文本。
问题:怎么获取文本框的文本
[解决办法]
FindControl()as Textbox
不可以吗?
[解决办法]
<asp:Button ID="btn" CommandArgument='<%# Container.DataItemIndex %>' CommandName="Update" runat="server" Text="修改" />
protected void gv_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Update")
{
TextBox txt = ((TextBox)gvSelect.Rows[Convert.ToInt32(e.CommandArgument.ToString())].FindControl("name文本框的ID"));
string Name = txt.Text;
}
}
[解决办法]
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
string id = this.GridView1.DataKeys[e.RowIndex].Value.ToString();
string name= ((TextBox)GridView1.Rows[e.RowIndex].FindControl("txtName")).Text.Trim();
//然后修改......
//.............
}
[解决办法]
你在GridView1_RowUpdating中处理,就是处理的当前行,你获取的肯定是当前行的id喽............
[解决办法]