我正在向旧系统添加新功能,我需要在LinkButton
中添加新的GridView
,如何知道单击了哪个LinkButton
,以便可以执行其他操作。现在,他们当然在做同样的事情。
<asp:GridView ID="gvHabitacionesCD" runat="server" CssClass="datatable"
AutoGenerateColumns="False" Width="100%"
OnSelectedIndexChanged="gv_SelectedIndexChanged"
EmptyDataText="Select a Period"
DataKeyNames="idH">
<Columns>
<asp:BoundField HeaderText="idH" DataField="idH" Visible="false" />
<asp:TemplateField HeaderText="Last Name">
<ItemTemplate>
<asp:LinkButton ID="btnSelectLastName" runat="server" CommandName="Select" Text='<%# Eval("LastName") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Name">
<ItemTemplate>
<asp:LinkButton ID="btnSelectName" runat="server" CommandName="Select" Text='<%# Eval("Name") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
在隐藏代码上
protected void gv_SelectedIndexChanged(object sender, EventArgs e)
{
GridView gv = (GridView)(sender);
getReservation(gv.DataKeys[gv.SelectedIndex].Value.ToString());
}
for CommandName =“ Select”进行2个不同的命令:C
因此,单击每个LinkButton会知道该怎么办。
<asp:BoundField HeaderText="idH" DataField="idH" Visible="false" />
<asp:TemplateField HeaderText="Last Name">
<ItemTemplate>
<asp:LinkButton ID="btnSelectLastName" runat="server"
CommandName="SelectLastName" Text='<%# Eval("LastName") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Name">
<ItemTemplate>
<asp:LinkButton ID="btnSelectName" runat="server"
CommandName="SelectFirstName" Text='<%# Eval("Name") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
[另一个选择是保持您的代码不变,并向每个链接添加CommandArgument =“ YourValueHere”并读取CommandName =“ Select”中的CommandArgument来了解单击了哪个LinkButton-如下所示:
<asp:BoundField HeaderText="idH" DataField="idH" Visible="false" />
<asp:TemplateField HeaderText="Last Name">
<ItemTemplate>
<asp:LinkButton ID="Select" runat="server"
CommandName="SelectLastName" Text='<%# Eval("LastName") %>'>
CommandArgument="LastName"</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Name">
<ItemTemplate>
<asp:LinkButton ID="Select" runat="server"
CommandName="SelectFirstName" Text='<%# Eval("Name") %>'>
CommandArgument="FirstName"</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
然后在CommandName =“ Select”时在后面的代码中>
If (CommandArgument="LastName")
//do something
If (CommandArgument="FirstName")
//do something else