利用Repeater控制項顯示主-從關係資料表的方法

來源:互聯網
上載者:User

NestedRepeater.aspx

&lt;%@ Import Namespace="System.Data" %&gt;<br />&lt;%@ Page language="c#" Codebehind="NestedRepeater.aspx.cs"<br />AutoEventWireup="false" Inherits="eMeng.NestedRepeater" %&gt;<br />&lt;HTML&gt;<br />&lt;body&gt;<br />&lt;form runat="server"&gt;<br />&lt;!-- 父Repeater開始 --&gt;<br />&lt;asp:repeater id="parentRepeater" runat="server"&gt;<br />&lt;itemtemplate&gt;<br />&lt;b&gt;<br />&lt;%# DataBinder.Eval(Container.DataItem,"au_id") %&gt;<br />&lt;/b&gt;<br />&lt;br&gt;<br />&lt;!-- 子Repeater開始 --&gt;<br />&lt;asp:repeater id="childRepeater" runat="server"<br />datasource='&lt;%# ((DataRowView)Container.DataItem).Row.GetChildRows("myrelation") %&gt;'&gt;<br />&lt;itemtemplate&gt;<br />&lt;%# DataBinder.Eval(Container.DataItem, "[/"title_id/"]")%&gt;<br />&lt;br&gt;<br />&lt;/itemtemplate&gt;<br />&lt;/asp:repeater&gt;<br />&lt;!-- 子Repeater結束 --&gt;<br />&lt;/itemtemplate&gt;<br />&lt;/asp:repeater&gt;<br />&lt;!-- 父Repeater結束 --&gt;<br />&lt;/form&gt;<br />&lt;/body&gt;<br />&lt;/HTML&gt;<br />

NestedRepeater.aspx.cs

using System;<br />using System.Data;<br />using System.Data.SqlClient;<br />using System.Web;<br />using System.Web.SessionState;<br />using System.Web.UI;<br />using System.Web.UI.WebControls;<br />namespace eMeng<br />{<br />/// &lt;summary&gt;<br />/// NestedRepeater 的摘要說明。<br />/// 本文介紹如何利用Repeater控制項顯示主-從關係的表格<br />/// 原文參見:<br />/// http://support.microsoft.com/default.aspx?scid=kb;en-us;306154<br />/// &lt;/summary&gt;<br />public class NestedRepeater : System.Web.UI.Page<br />{<br />protected System.Web.UI.WebControls.Repeater parentRepeater;<br />public void Page_Load(object sender, EventArgs e)<br />{<br />// 為Authors表建立 Connection 和 DataAdapter<br />string cnnString = @"server=(local)/NetSDK;database=pubs; Integrated Security=SSPI;";<br />SqlConnection cnn = new SqlConnection(cnnString);<br />SqlDataAdapter cmd1 = new SqlDataAdapter("select * from authors",cnn);<br />//建立填充 DataSet.<br />DataSet ds = new DataSet();<br />cmd1.Fill(ds,"authors");<br />// 為Titles表建立 DataAdapter<br />SqlDataAdapter cmd2 = new SqlDataAdapter("select * from titleauthor",cnn);<br />cmd2.Fill(ds,"titles");<br />// 建立 Authors 表和 Titles 表之間的關係.<br />ds.Relations.Add("myrelation",<br />ds.Tables["authors"].Columns["au_id"],<br />ds.Tables["titles"].Columns["au_id"]);<br />// 綁定Authors到父Repeater<br />parentRepeater.DataSource = ds.Tables["authors"];<br />Page.DataBind();<br />cnn.Close();<br />cnn.Dispose();<br />}<br />private void Page_Init(object sender, EventArgs e)<br />{<br />InitializeComponent();<br />}<br />private void InitializeComponent()<br />{<br />this.Load += new System.EventHandler(this.Page_Load);<br />}<br />public NestedRepeater()<br />{<br />Page.Init += new System.EventHandler(Page_Init);<br />}<br />}<br />}<br />

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.