2013-05-06 76 views
3

是否可以删除ASP.NET列表视图控件中的列标题?如何从ASP.NET列表视图中删除列标题

<asp:ListView ID="ListView1" class="lv" runat="server" DataSourceID="SqlDataSource1" 
      onprerender="ListView1_PreRender" 
      onselectedindexchanged="ListView1_SelectedIndexChanged" 
      style="text-align: left"> 
+0

你使用C#或VB.NET? – Solaflex 2013-05-06 14:20:58

+0

C#@ Solaflex :) – IceDawg 2013-05-06 17:02:20

+0

您是否尝试使用ItemTemplate并且没有标题行? – Nabheet 2013-05-06 17:59:37

回答

1

使用LayoutTemplate,您可以定义列,然后使用OnLayoutCreated事件隐藏特定的列。

<asp:ListView ID="ListView1" class="lv" runat="server" DataSourceID="SqlDataSource1" 
     onprerender="ListView1_PreRender" 
     onselectedindexchanged="ListView1_SelectedIndexChanged" 
     style="text-align: left" OnLayoutCreated="OnLayoutCreated"> 
    <LayoutTemplate> 
     <table id="itemPlaceholderContainer"> 
      <tr> 
       <td><asp:Label id="columnToHide" runat="server" Text="Column 1" /></td> 
      </tr> 
      <tr id="itemPlaceholder" runat="server"> 
      </tr> 
     </table> 
    </LayoutTemplate> 
    <ItemTemplate> 
     <tr> 
      <td><%#Eval("name")></td> 
     </tr> 
    </ItemTemplate> 

然后在后台代码:

protected void OnLayoutCreated(object sender, EventArgs e) 
{ 
    this.ListView1.FindControl("columnToHide").Visible = false; 
} 
+0

问题是关于ASP.NET,而不是Windows窗体。 – 2013-05-06 15:16:45

+0

@MichaelLiu我的道歉,已经更新了我的帖子和相关信息。 – Terence 2013-05-07 06:54:01

0

试试这个

<asp:Listview id="listview1" runat="server" DataSourceID="sqldatasource1"> 
    <LayoutTemplate> 
        <table id="itemPlaceholderContainer"> 
         <tr runat="server" id="itemPlaceholder"> 
         </tr> 
        </table> 
       </LayoutTemplate> 
    <ItemTemplate> 
    <tr> 
    <td> 
    <asp:HyperLink runat="server" text='<%#Eval("name")>'></asp:HyperLink> 
    </td> 
    </tr> 
    </ItemTemplate> 


    </asp:Listview>