按钮的CommandArgument绑定为id点击按钮时出发GridView的RowCommand然后执行所需 *** 作:例如
前台:
<asp:GridView ID="GridView1" runat="server" onrowcommand="GridView1_RowCommand">
<Columns>
<asp:TemplateField>
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Button ID="Button1" CommandName="btn1" CommandArgument='<%#Eval("id") %>' runat="server" Text="Button" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField />
</Columns>
</asp:GridView>
后台:
在Gridview的RowCommand事件中处理你所需的 *** 作,如下:
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (eCommandName == "btn1")
{
//执行所需 *** 作
}
}
在选择事件中用GridView1SelectedRowFindControl(按钮ID)来查找按钮。
或者给选择按钮加CommandArgument和CommandName参数用来传递名和参数更方便一些。
前台删除按钮(id为主键,用来删除数据)
<asp:TemplateField HeaderText=" *** 作">
<ItemTemplate>
<asp:LinkButton ID="lbtDelete" runat="server" CommandName="deleteData" Text="删除" CommandArgument='<%# DataBinderEval(ContainerDataItem,"id")%>'> </asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
后台(girdview的RowCommand事件):
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (eCommandName == "deleteData")
{
LinkButton lbt = (LinkButton)eCommandSource;
string id = eCommandArgumentToString();
deleteUserInfo(id);//此次调用写好的删除数据的方法
}
}
id绑定在某一个按钮的commandargument上 然后给这个按钮的commandname起个名
然后再gridview的 命令行事件里面写
if(ecommandname=="")//你起的名
{
responseredirect("xxxaspxid="+ecommandargument);//传
}
在下一页用requestquerystring["id"];//接收
protected void TotalGridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (eRowRowType == DataControlRowTypeDataRow)
{
DropDownList PJStateList1 = ((DropDownList)eRowFindControl("PJStateDDList"));
if (PJStateList1 != null)
{
}
}
应该是这样子,你试试看后台代码,,前几天写了跟你差不多的。。只不过我是获取Button控件
其实linkbutton也可以这样的,你可以将该行的id 绑定 到 CommandArgument 属性上 。你还可以利用CommandName这个属性。这个属性一般是你这一行有多个按钮,但是你又不知道是哪个按钮点击的,那么这个参数就可以派上用场了。 只要将每个按钮的CommandName设置一个名称,比如新增 CommandName = "New" , 修改 CommandName = "Modify"那么你可以在protected void btn1_Command(object sender, CommandEventArgs e) { string id = eCommandArgumentToString(); string command = eCommandName ; if(command == "New")//这就代表点击了这一行的新增按钮 {} if(){} } 查看原帖>>
以上就是关于asp.net 如何用gridview中的buttonfield获取该行id全部的内容,包括:asp.net 如何用gridview中的buttonfield获取该行id、GridView中如何获取选择按钮的ID值、gridview点击行变色,可怎样得到这行的ID呢来进行删除和修改 *** 作。不想使用复选框!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)