动态网格上的带有链接按钮列的ASP.NET Gridview

时间:2012-12-20 23:06:55

标签: c# asp.net vb.net gridview

动态网格上带有链接按钮列的ASP.NET Gridview

ASP.NET Gridview应该有一个链接列 - 第一列,单击时应该带到单击单元格值的另一个页面。网格是动态的,即列不固定,列/列本身没有动态。我为第一列添加了一个asp控件,剩下的列是动态的,在后面的代码中我总是添加第一列“linkbutton”。

<Columns>
    <asp:TemplateField HeaderText="linkbutton">
    <ItemTemplate>
        <asp:LinkButton ID="linkbutton" runat="server" Text='<%#EVal("linkbutton") %>'
            CommandName="ShowDetails" CommandArgument='<%#Eval("linkbutton") %>'>
        </asp:LinkButton>
    </ItemTemplate>
</asp:TemplateField> 
</Columns>

linkbutton是数据表的一部分,所以当我将数据表绑定到gridview时,它会出现两次,一次是templatefield,一次是数据绑定。 gridview.column()。visible = false没有工作,因为它认为linkbutton是唯一的列而不是数据表列。

我试图从代码后面添加Linkbutton控件,但也没有用。

1 个答案:

答案 0 :(得分:1)

我会将autogeneratecolumns设置为false,然后使用asp:BoundFields来显示数据表中的列,而不是使用asp:TemplateField处理的linkbutton。

然后您可以使用GridView.Columns()。可见隐藏/显示不同的列。

您无法使用GridView.Columns()。自动生成的列可见,因为they are not added to Columns()

  

明确声明的列字段可以与。结合使用   自动生成的列字段。两者都明确使用时   声明的列字段首先呈现,然后是   自动生成的列字段。自动生成的列   字段未添加到Columns集合。