<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Hopes

    Start Here..

     

    Page.DataBind()方法

    我們先來看一個(gè)簡(jiǎn)單的例子:

    C#代碼  收藏代碼
    1. <% @ Page Language="C#" %>  
    2. <% @ Import Namespace="System.Data" %>  
    3. <Script Language="C#" Runat="Server">  
    4. public void Page_Load(Object src,EventArgs e)  
    5. {  
    6.    //首先建立一個(gè)數(shù)組  
    7.    ArrayList arr=new ArrayList();   
    8.    arr.Add("飛刀");  
    9.    arr.Add("Zsir");  
    10.    arr.Add("大風(fēng)");  
    11.    arr.Add("布丁");  
    12.    arr.Add("亞豪");  
    13.   
    14.    //將數(shù)組捆綁到DropDownList控件上去  
    15.    DDL.DataSource = arr;  
    16.    DDL.DataBind();  
    17. }  
    18. </script>  
    19. <html>  
    20. <head>  
    21. <title></title>  
    22. </head>  
    23. <body>  
    24. <asp:DropDownList id="DDL" runat="server" />  
    25. </body>  
    26. </html>  

     

    我們?cè)诖a中可以看到我們建立了一個(gè)DropDownList,但是他沒有<asp:ListItem>屬性,而我們從最后的顯示中依然可以看到我們所列出的選項(xiàng)。

    這里就是我們用DataBind的結(jié)果,在Page_Load方法中我們建立了一個(gè)數(shù)組(ArrayList),并通過DataBind方法將這個(gè)數(shù)組捆綁到了DropDownList控件中,使得DropDownList最后有數(shù)據(jù)顯示:),怎么樣對(duì)Bind有一定感性認(rèn)識(shí)了吧。下面我們開始正式講解

    其實(shí)DataBind(),不僅能對(duì)控件進(jìn)行捆綁,而且還能夠?qū)?yè)面中屬性,方法進(jìn)行捆綁,甚至整個(gè)頁(yè)面都可以捆綁。比如,調(diào)用Page.DataBind()方法或者直接使用DataBind(),那么整個(gè)頁(yè)面都將被捆綁,所有的數(shù)據(jù)全在監(jiān)視之下。下面的例子,我們將使用DataBind方法來捆綁DropDownList,并獲得其中的數(shù)據(jù)

      收藏代碼
    1. <% @ Page Language="C#" %>  
    2. <% @ Import Namespace="System.Data" %>  
    3. <Script Language="C#" Runat="Server">  
    4. public void sub_Click(Object sender,EventArgs e)  
    5. {  
    6. Page.DataBind();  
    7. }  
    8. </script>  
    9. <html>  
    10. <head>  
    11. <title></title>  
    12. </head>  
    13. <body>  
    14. <form runat=server>  
    15.   <asp:DropDownList id="DDL" runat="server" >  
    16.   <asp:ListItem>ASP技術(shù)</asp:ListItem>  
    17.   <asp:ListItem selected>ASP.Net技術(shù)</asp:ListItem>  
    18.   <asp:ListItem>JSP技術(shù)</asp:ListItem>  
    19.   <asp:ListItem>PHP技術(shù)</asp:ListItem>  
    20.   <asp:ListItem>組件技術(shù)</asp:ListItem>  
    21.   </asp:DropDownList>  
    22. <br>  
    23. 你現(xiàn)在選擇的是:<font color=red><%# DDL.SelectedItem.Text %></font>區(qū)  
    24. <br>  
    25. <asp:Button id="sub" Text="提交" Type="submit" runat=server OnClick="sub_Click" />  
    26. </form>  
    27. </body>  
    28. </html>  

     

    我們看到,那個(gè)紅色的[JSP技術(shù)],我們并沒有使用什么控件,但是他卻能正確的顯示我們的選擇結(jié)果,這個(gè)是就捆綁的結(jié)果,注意<%# DDL.SelectedItem.Text %>這句話,正是它讓我們?nèi)〉昧死壍臄?shù)據(jù)。它看上去是不是像我們熟悉的<%=...%>這個(gè)語(yǔ)句,它們的使用方法相差不多,只是<%=...%>是在程序執(zhí)行時(shí)調(diào)用,<%#... %>是在DataBind()方法之后被調(diào)用。以后我們還能經(jīng)常看到他的身影,呵呵。

    接收Bind的控件,一般有DropDownList,DataList,DataGrid,ListBox這些集合性質(zhì)的控件,而被捆綁的主要是ArrayList(數(shù)組),Hashtable(哈稀表),DataView(數(shù)據(jù)視圖),DataReader這四個(gè),以后我們就可以對(duì)號(hào)入座,不會(huì)出現(xiàn)DataTable被捆綁的錯(cuò)誤了:)

    講到Bind,就不能說一下DataBinder.Eval()方法.

    我們?cè)谑褂肈ataBind,獲得的數(shù)據(jù),系統(tǒng)會(huì)將其默認(rèn)為String(字符串),這對(duì)我們平時(shí)的輸出顯示提供了極大的方便,但是我們并不是每次都需要string類型,有時(shí)我們就需要Boolean,Int32這些類型。此時(shí)我們就需要轉(zhuǎn)化類型了。可能大家最先想到的是String.Format方法,這是最好的,但是用法過于煩。所以最好不要這樣啦。我們可以用DataBinder.Eval()方法,他的格式是:

    DataBinder.Eval(Container.DataItem,"轉(zhuǎn)換的類型","格式")

    最后一個(gè)"格式"是可選的,一般不用去管他,Container.DataItem是捆綁的數(shù)據(jù)項(xiàng),"轉(zhuǎn)換類型"指的是Integer,String,Boolean這一類東西.

    有了它,我們處理數(shù)據(jù)就更加方便

    最后我們來看一個(gè)例子,關(guān)于DataView的捆綁,呵呵,老是用DropDownList煩了,這次用DataGrid,在這個(gè)例子中我們可以看到"表是怎樣煉成的"

    C#代碼  收藏代碼
    1. <% @ Page Language="C#" %>  
    2. <% @ Import Namespace="System.Data" %>  
    3. <Script Language="C#" Runat="Server">  
    4. public void Page_Load(Object src,EventArgs e)  
    5. {  
    6. int i;  
    7. //建立表數(shù)據(jù)  
    8. DataTable dt=new DataTable();  
    9. DataRow dr;  
    10. //建立Column例,可以指明例的類型,這里用的是默認(rèn)的string  
    11. dt.Columns.Add(new DataColumn("編號(hào)"));  
    12. dt.Columns.Add(new DataColumn("用戶名"));  
    13. for(i=1;i<8;i++)  
    14. {  
    15. dr=dt.NewRow();   
    16. dr[0]=Int32.ToString(i);  
    17. dr[1]="aspcn"+Int32.ToString(i);  
    18. dt.Rows.Add(dr);  
    19. }  
    20. //捆綁  
    21. DG1.DataSource = new DataView(dt);  
    22. DG1.DataBind();  
    23.   
    24.   
    25. }  
    26. </script>  
    27. <html>  
    28. <head>  
    29. <title></title>  
    30. </head>  
    31. <body>  
    32. <asp:DataGrid id="DG1" runat=server align=center HeaderStyle-BackColor="#aaaadd" />  
    33.   
    34. </body>  
    35. </html>  

    posted on 2012-05-10 20:20 ** 閱讀(626) 評(píng)論(1)  編輯  收藏

    評(píng)論

    # re: Page.DataBind()方法 2013-12-09 11:34 乖乖

    成功后吃飯  回復(fù)  更多評(píng)論   


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     

    導(dǎo)航

    統(tǒng)計(jì)

    公告

    你好!

    常用鏈接

    留言簿(2)

    隨筆檔案

    文章分類

    文章檔案

    新聞檔案

    相冊(cè)

    收藏夾

    C#學(xué)習(xí)

    友情鏈接

    搜索

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 国产精品99精品久久免费| 精品无码无人网站免费视频| 久久精品亚洲中文字幕无码网站| 最近高清中文字幕免费| 日韩欧美亚洲国产精品字幕久久久| 久久亚洲精品视频| 亚洲成av人片在www鸭子| 亚洲中文字幕久久久一区| 精品亚洲AV无码一区二区| 亚洲福利秒拍一区二区| 亚洲色欲或者高潮影院| 亚洲国产成人一区二区三区 | 国产成人1024精品免费| 亚洲av无码不卡久久| 亚洲av无码成人精品国产| 亚洲福利电影一区二区?| 成年免费大片黄在线观看岛国| 美女被艹免费视频| 成人毛片视频免费网站观看| 中文字幕无线码中文字幕免费| 亚洲入口无毒网址你懂的| 久久精品国产精品亚洲人人| 亚洲欧洲国产精品久久| 亚洲欧洲精品一区二区三区| 久久亚洲AV无码精品色午夜| 亚洲制服在线观看| 美女隐私免费视频看| 美女视频黄a视频全免费网站色窝 美女被cao网站免费看在线看 | 黄色网址在线免费| 午夜网站在线观看免费完整高清观看 | 在线永久免费观看黄网站| 全亚洲最新黄色特级网站 | 欧美亚洲精品一区二区| 国产精品亚洲一区二区三区 | 国产性生大片免费观看性 | 亚洲w码欧洲s码免费| 四虎必出精品亚洲高清| 国产综合亚洲专区在线| 国产精品免费无遮挡无码永久视频| 国产v亚洲v天堂无码网站| 国产v片免费播放|