如何将网格视图行显示为链接

本文关键字:显示 链接 视图 网格 | 更新日期: 2023-09-27 18:19:48

我有一个网格视图。

<asp:GridView ID="GridAll" runat="server">
</asp:GridView>

以及背后的代码。

protected void BindGrid()
    {
        conn = new SqlConnection(connString);
        cmdBind = new SqlCommand("SELECT Name, Department, Year FROM UserProfile",conn);
        conn.Open();
        reader = cmdBind.ExecuteReader();
        GridAll.DataSource = reader;
        GridAll.DataBind();
        reader.Close();
        conn.Close();
    }

它运行良好。现在,我希望网格视图将所有行显示为链接,以便单击链接显示更多详细信息。

我怎样才能做到这一点?

如何将网格视图行显示为链接

使用GridView模板字段:可以轻松完成

 <asp:TemplateField>
         <HeaderTemplate>
           Link
         </HeaderTemplate>
         <ItemTemplate>
             <asp:LinkButton PostBackUrl='<%# Eval("Value" )%>' Text='<%# Eval("Value" )%>'
                   ID="lnk" runat="server" />
         </ItemTemplate>
     </asp:TemplateField>

Where value您要放置的链接。你也可以从代码背后做同样的事情:

protected void myGrid_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            Customer cust = e.Row.DataItem as Customer;
            if (!cust.ShowURL)
            {
                LinkButton lnkWebURL = e.Row.FindControl("lnk") as LinkButton;
                //Set lnkWebURL stugg
            }
        }
    }

我从这里抄了这个答案。