《ASP.NET》資料的綁定—Repeater,

來源:互聯網
上載者:User

《ASP.NET》資料的綁定—Repeater,

     前面學習了HTML靜態網頁編程,瞭解了其中的一些文法,但是自己感覺對Web編程掌握的還不夠過癮,於是跟著計劃,開始了ASP.NET之旅。在寫這篇ASP.NET部落格之前之前,我想先將先比較一下ASP.NET與HTML的區別與聯絡。

     一、聯絡與區別:HTML是在用戶端編程,通常產生的是靜態網頁;ASP.NET是在伺服器端編程,通常能產生動態網頁。ASP.NET中的控制項是HTML中的控制項重新設計、封裝起來的,也就是說ASP.NET中的控制項是以HTML中的控制項為基礎。ASP.NET控制項具有回送功能,夠用ViewState維持控制項的狀態, HTML控制項則不能,當點擊頁面的操作,其狀態就會丟失。

     在ASP.NET的學習過程中,其控制項的學習和使用佔了很大的一部分,今天,我說一下控制項Repeater控制項的使用,用它來綁定後台資料,然後在用戶端(瀏覽器)上顯示出來!

     二、 Repeater控制項

     1、用途:使用模板迴圈顯示資料。

     2、包含的模板:

        <ItemTemplate></ItemTemplate> 項目模板(裡面的資料正常顯示)

<AlternatingItemTemplate></AlternatingItemTemplate> 交錯顯示模板(裡面繫結資料交錯著顯示)<FooterTemplate></FooterTemplate>頁尾模板(編輯頁尾)

   <HeaderTemplate></HeaderTemplate>頁首模板(編輯頁首)

<SeparatorTemplate></SeparatorTemplate>間隔模板 (在顯示的資料中插入間隔,像橫線、特殊符號等等)

     三、樣本

     我用vs2012的ASP.NET Web表單應用程式編寫的執行個體。

     1、內容介紹

     將資料庫中Person表中的資訊選出來,然後用Repeater控制項在用戶端顯示出來。是我Sqlser資料庫中person表中的資訊。

     

    1:將資料庫中的資訊選出來並在後台綁定: 建立Web表單應用程式,添加表單,在表單的Page_Load事件中添加如下代碼。

      

protected void Page_Load(object sender, EventArgs e)        {            SqlConnection con = DB.createConnection();            SqlDataAdapter sda = new SqlDataAdapter();            string sql="select * from person ";            sda.SelectCommand = new SqlCommand(sql, con);            DataSet ds=new DataSet();            sda.Fill(ds, "per");            this.Repeater1.DataSource=ds.Tables["per"];            Repeater1.DataBind();        }

     2:用控制項Repeater的模板  <ItemTemplate></ItemTemplate>   將資訊顯示,代碼如下

<asp:Repeater ID="Repeater1" runat="server">                <ItemTemplate>                    <p align="center">                        <%# DataBinder.Eval(Container.DataItem,"pID") %>                        <%# DataBinder.Eval(Container.DataItem,"personName") %>                        <%# DataBinder.Eval(Container.DataItem,"personSex") %>                    </p>                </ItemTemplate>            </asp:Repeater>

     3:顯示效果如下


     4:<AlternatingItemTemplate></AlternatingItemTemplate>模板使用(讓資料交叉顯示)

 <asp:Repeater ID="Repeater1" runat="server">                <AlternatingItemTemplate>                    <p align="center">                        <font color="blue"> <%# DataBinder.Eval(Container.DataItem,"pID") %>                        <%# DataBinder.Eval(Container.DataItem,"personName") %>                         <%# DataBinder.Eval(Container.DataItem,"personSex") %></font>                    </p>                </AlternatingItemTemplate>            </asp:Repeater>

    顯示效果如下,結構只顯示2、4、6、9列,這就是所謂的交叉顯示。

    最後,我將五個模板一塊使用,前台代碼如下

<asp:Repeater ID="Repeater1" runat="server">                <HeaderTemplate>                    <h3 align="center">頁首模板</h3>                </HeaderTemplate>                <ItemTemplate>                    <p align="center">                        <font color="blue"> <%# DataBinder.Eval(Container.DataItem,"pID") %>                        <%# DataBinder.Eval(Container.DataItem,"personName") %>                         <%# DataBinder.Eval(Container.DataItem,"personSex") %></font>                    </p>                </ItemTemplate>                <AlternatingItemTemplate>                    <p align="center">                        <font color="blue"> <%# DataBinder.Eval(Container.DataItem,"pID") %>                        <%# DataBinder.Eval(Container.DataItem,"personName") %>                         <%# DataBinder.Eval(Container.DataItem,"personSex") %></font>                    </p>                </AlternatingItemTemplate>                <SeparatorTemplate>                    <hr color="red" size="1" />                </SeparatorTemplate>                <FooterTemplate>                    <h3 align="center">頁尾模板</h3>                </FooterTemplate>            </asp:Repeater>

    顯示如下


      這就是利用控制項將後台資料庫中的資訊用瀏覽器顯示出來的方法,其實不光Repeater控制項,像DataList,GridView,CheckBoxList、DropDownList等等都能將資料庫中的資訊加以綁定然後再在瀏覽器中顯示出來,後面我會一一介紹,敬請期待!!



著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.