【问题标题】:How do I parse value from linkbutton inside gridview如何从gridview中的linkbutton解析值
【发布时间】:2014-10-31 12:41:10
【问题描述】:

请注意这张图:

我希望能够单击“15”(或其他任何一个(它们都是链接按钮))BatchID 值并触发一个事件,在该事件中我希望能够解析单击的 [linkbutton] 值。

因此,例如,如果您单击 22,在它触发的事件中,我希望能够解析被单击的按钮的值 (22)。

这是我的网格视图代码:

    <asp:GridView runat="server" ID="HSMGrid"
                AutoGenerateColumns="false"
                DataKeyNames="Status"
                OnRowCommand="grdvwSearchDepositTransaction_RowCommand" OnRowDataBound="grdSearch_RowDataBound" ShowHeaderWhenEmpty="true"
                CssClass="grid" Width="650">
               <HeaderStyle CssClass="HeaderTemplate" />
               <FooterStyle CssClass="FooterTemplate" />
                <Columns>
                    <asp:TemplateField HeaderText="BatchID">
                        <ItemTemplate>
                        <asp:LinkButton runat="server" ID="btnBatchId" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "TransactionGroupsEntry.groupID") %>' OnClick="btnBatchId_Click" Text='<%# DataBinder.Eval(Container.DataItem, "TransactionGroupsEntry.groupID") %>' />
                        </ItemTemplate>
                        </asp:TemplateField>
                        <asp:BoundField DataField="TransactionGroupsEntry.bankNumber" HeaderText="Bank" ItemStyle-CssClass="mediumColumn columnCenter" />
                        <asp:BoundField DataField="TransactionGroupsEntry.branchNumber" HeaderText="Branch" ItemStyle-CssClass="mediumColumn columnCenter" />
                        <asp:BoundField DataField="TransactionGroupsEntry.cashInTicketAmount" HeaderText="Cash-In Ticket Amount" ItemStyle-CssClass="mediumColumn columnCenter" />
                        <asp:BoundField DataField="TransactionGroupsEntry.createdBy" HeaderText="Created By" ItemStyle-CssClass="mediumColumn columnCenter" />
                        <asp:BoundField DataField="TransactionGroupsEntry.dateCreated" HeaderText="Date Created" ItemStyle-CssClass="mediumColumn columnCenter" />
                        </Columns>
                    <EmptyDataTemplate>
                        <span style="font-weight: bold;">No Transactions have been entered</span>
                    </EmptyDataTemplate>
            </asp:GridView>

这是它触发的事件:

    protected void btnBatchId_Click(object sender, EventArgs e)
        {

        }

【问题讨论】:

  • 什么是“它应该触发的事件”,它已经处理了点击事件还是你想要它?我会使用模板字段和真正的LinkButton。然后你可以使用它的Click-event。
  • 它确实触发了该事件。
  • 点击链接后是否在寻找链接按钮值?
  • @NeerajDubey 你懂的兄弟
  • @Indianaadminstopstuck:只是出于兴趣,它如何处理该事件,btnBatchId_Click 无处订阅?

标签: c# asp.net gridview


【解决方案1】:

您只需将sender 转换为LinkButton 并使用它的Text 属性:

protected void btnBatchId_Click(object sender, EventArgs e)
{
    LinkButton link = (LinkButton) sender;
    string batchID = link.Text;
}

【讨论】:

  • 丹克塞尔!非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多