gpt4 book ai didi

asp.net - 如何在 ASP.NET gridview 的标题中放置一个按钮?

转载 作者:行者123 更新时间:2023-12-02 13:51:22 26 4
gpt4 key购买 nike

我想做的就是在 gridview 的标题中放置一个 asp:button 。假设您有一个包含 3 列的 GridView - id、name、family。因此,我希望它不是标题 [id, name, family],而是 [id, name, asp:button] - 所以按钮当然会有它的操作。

谢谢,罗马。

最佳答案

您需要采取的方法是将所需的 GridView 列设为模板字段。当您使用模板字段时,您可以将任何 ASP.NET 控件粘贴到 gridview 控件的每个主要部分(页眉、项目、页脚等)。我还没有测试过,但原则上它看起来像这样:

        <asp:GridView ID="Gridview1" runat="server">
<Columns>
<asp:BoundField DataField="yourDbColumnName" HeaderText="id" />
<asp:BoundField DataField="yourDbColumnName" HeaderText="name" />
<asp:TemplateField>
<HeaderTemplate>
<asp:Button runat="server" ID="btnFamily" CommandName="FamilyClicked" />
</HeaderTemplate>
<ItemTemplate>
<asp:Literal runat="server" ID="litFamily" Text='<%# EVAL("YourDbColumnValue") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>

要“捕获”按钮的单击事件并对其执行某些操作,您需要利用 GridView 的 RowCommand 事件(这是一个起点 - 再次未经测试):

    Protected Sub Gridview1_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles Gridview1.RowCommand
If e.CommandName = "FamilyClicked" Then
' they clicked by grid view header's asp:button control...
Response.Write("TEST")
End If
End Sub

这里的神奇之处在于按钮的 CommandName 属性的分配(在本例中我将其设置为“FamilyClicked”,但它可以是您想要的任何内容)。

以下是有关 GridView 使用的模板字段技术的更多基础知识 - link text

希望有帮助。

关于asp.net - 如何在 ASP.NET gridview 的标题中放置一个按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1417471/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com