asp.net 如何用gridview中的buttonfield获取该行id

asp.net 如何用gridview中的buttonfield获取该行id,第1张

按钮的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呢来进行删除和修改 *** 作。不想使用复选框!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10050190.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存