2012-04-04 2 views
0

아무도 나를 ASP.net의 GridView에 대해 할 수있는 것처럼 listview에서 동적으로 열을 생성하도록 안내 할 수 있습니까?자동 생성 열이있는 목록보기

+0

. 왜 GridView를 사용하지 않으시겠습니까? – Pankaj

+0

@Helper GridView는 표시 및 편집 만하는 데이터 삽입을 지원하지 않습니다. 그 이유는 100 % 확실하지 않지만 유효합니다. – Peter

답변

0

ListView 컨트롤에는 이러한 속성이 없습니다. 페이지의 열을 하드 코딩하는 대신 아래 코드에서 생성 할 수 있습니다.

 class Movie 
     { 
      public string Title {get;set;} 
     } 

     ListView1.DataSource = new List<Movie>() 
     { 
       new Movie {Title = "tEST"}, 
       new Movie {Title = "tEST"}, 
       new Movie {Title = "tEST"}, 
       new Movie {Title = "tEST"} 

     }; 

     ListView1.DataBind(); 

     var columns = new string[] 
     { 
      "Coulmn 1", 
      "Coulmn 2", 
      "Coulmn 3" 
     }; 

     var row = ListView1.FindControl("header") as HtmlTableRow; 

     if (row != null) 
     { 
      foreach (var column in columns) 
      { 
       HtmlTableCell cell = new HtmlTableCell(); 
       cell.InnerText = column; 
       row.Cells.Add(cell); 
      } 
     } 

     <asp:ListView runat="server" ID="ListView1" > 
     <LayoutTemplate> 
     <table runat="server" id="table1" > 
     <tr id="header" runat="server"> 
     </tr> 
     <tr runat="server" id="itemPlaceholder" ></tr> 
     </table> 
    </LayoutTemplate> 
    <ItemTemplate> 
    <tr> 
     <td> 
      <asp:Label ID="NameLabel" runat="server" 
      Text='<%#Eval("Title") %>' /> 
     </td> 
    </tr> 
    </ItemTemplate> 
    </asp:ListView> 

감사

딥우 ListView를 지원하는 그런 프로퍼티가 존재하지 않을

관련 문제