0

我的表格中有一个gridview。我正在处理RowDataBound网格事件。现在我在gridview的列中有一个模板字段。已在模板字段中获取标签。我想RowDataBound在运行时在事件上添加指向此标签的链接,但.System.Web.UI.WebControls.LinkButton 显示的是链接按钮而不是链接按钮。如何在网格视图中添加带有标签文本的链接按钮?

4

1 回答 1

0

只需在模板字段中添加一个链接按钮

<asp:GridView runat="server" ID="gridView">
        <Columns>
            <asp:TemplateField>
                <ItemTemplate>
                    <asp:LinkButton runat="server" ID="lnkTest"></asp:LinkButton>
                </ItemTemplate>
            </asp:TemplateField>
        </Columns>
    </asp:GridView>

然后在您的 rowdatabound 事件中,您可以找到它并做任何您想做的事情

void gridView_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            Entity entity = e.Row.DataItem as Entity;

            LinkButton lnkTest = e.Row.FindControl("lnkTest") as LinkButton;
            lnkTest.CommandArgument = entity.ID.ToString();
            lnkTest.Text = entity.Name;
        }
    }

然后,您可以订阅 gridview Command 事件,并在单击链接按钮时传递正确的 CommandArgument。希望这可以帮助。

于 2012-06-05T11:02:55.643 回答