检查gridview中的超链接是否已被点击c#

时间:2016-09-22 11:13:52

标签: c# asp.net gridview arraylist hyperlink

您好我想知道如何从已点击的gridview中的超链接获取文本字段和索引。基本上,用户将点击gridview中的超链接,并且当用户被导航到链接时,链接的文本字段和索引将被存储到arraylist中。有谁知道我怎么能这样做?

我为gridview中的onrowdatabound事件处理程序提出了这个“伪代码”:

ArrayList linksClicked = new ArrayList();

if (e.Row.RowType == DataControlRowType.DataRow)
        {
            HyperLink hl = (HyperLink)e.Row.FindControl("links");
            if (hl != null)
            {
                linksClicked.Add(h1.ToString());
            }
        }

1 个答案:

答案 0 :(得分:0)

您应该将ItemTemplateLinkButton一起使用。在此按钮中,您可以保留索引或ID,如CommandArgument,还可以轻松捕获事件onClick并为数组添加索引。使用此示例。

<asp:TemplateField>
        <ItemTemplate>
           <asp:LinkButton ID="hyperLinkButton" Text="link" PostBackUrl="youruri.com" runat="server" 
           CommandArgument="<%# Eval("SomeFieldYouNeedArguementFrom") %>" OnClick="hyperLinkButton_Click" >
           </asp:LinkButton>
        </ItemTemplate>
    </asp:TemplateField>


protected void hyperLinkButton_Click(object sender, EventArgs e)
{
    LinkButton btn = (LinkButton)(sender);
    string yourValue = btn.CommandArgument;
    // do what you need here
}