DataGrid中嵌套使用Repeater_電腦知識網
熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

DataGrid中嵌套使用Repeater

2013-11-12 23:38:30  來源: .NET編程 
     本文描述了如何把Repeater 控件嵌套進DataGrid來顯示分級的數據 當然你也可以將這一技術應用到其他的列表綁定控件上去比如DataGrid包含DataGridDataList包含DataList等等的組合
  
  完整的代碼 如下要注意的是
  
   DataGridDataSource=dv;
   DataGridDataBind();
  
  一定要在dsRelationsAdd()之後
  
  <%@import namespace=SystemData %>
  <%@import namespace=SystemDataOleDb%>
  <script language=c# runat=server>
  string connstr=ConfigurationSettingsAppSettings[ConnectionString];
  
  //小區信息
  string sql=select * from location where location_id in(select location from catalyst);
  //交換機信息
  string sqltext=select * from catalyst order by location desc;
  
  private void page_load(Object objEventArgs e)
  {
   if(!PageIsPostBack)
   {
   Dataload();
   }
  }
  
  private void Dataload()
  {
   try
   {
   OleDbConnection conn=new OleDbConnection(connstr);
   DataSet ds=new DataSet();
   OleDbDataAdapter da=new OleDbDataAdapter(sqlconn);
   daFill(dslocation);
   DataView dv=new DataView(dsTables[location]);
  
   OleDbDataAdapter da=new OleDbDataAdapter(sqltextconn);
   daFill(dscatalyst);
   dsRelationsAdd(myrelationdsTables[location]Columns[location_id]dsTables[catalyst]Columns[location]);
  
   DataGridDataSource=dv;
   DataGridDataBind();
  
   connClose();
   }
   catch(OleDbException ex)
   {
   infoText=exMessage;
   }
  }
  </script>
  <html>
  <body>
  <form runat=server>
  
  <asp:DataGrid id=DataGrid runat=server AutoGenerateColumns=false>
   <Columns>
   <asp:TemplateColumn HeaderText=小區名>
   <ItemTemplate>
   <%# DataBinderEval(ContainerDataItemlocation_name) %>
   </ItemTemplate>
   </asp:TemplateColumn>
   <asp:TemplateColumn HeaderText=交換機編號>
   <ItemTemplate>
   <asp:Repeater id=ChildRepeater DataSource=<%# ((DataRowView)ContainerDataItem)RowGetChildRows(myrelation) %> runat=server>
   <ItemTemplate>
   <%# ContainerItemIndex+%><%# DataBinderEval(ContainerDataItem [\label\])%><br>
   </ItemTemplate>
   </asp:Repeater>
   </ItemTemplate>
   </asp:TemplateColumn>
   </Columns>
  </asp:DataGrid>
  
  
  </form>
  <asp:label id=info forecolor=blue runat=server/>
  </body>
  </html>
From:http://tw.wingwit.com/Article/program/net/201311/11177.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.