日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
C#數(shù)據(jù)綁定控件中的DataSource屬性

有的時(shí)候,你在編程進(jìn)入一定階段,進(jìn)一步提升很困難的境況之下,不妨回過頭來看看基礎(chǔ)的東西,或許你會(huì)有新的受益,或許能夠真正的體會(huì)到孔夫子所謂的“溫故而知新”的真正內(nèi)涵。

公司主營業(yè)務(wù):成都網(wǎng)站建設(shè)、做網(wǎng)站、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出淮安免費(fèi)做網(wǎng)站回饋大家。

常用的C#數(shù)據(jù)綁定控件有:Repeater、DataList、GridView、DetailsView等,在這里我拿Repeater來簡單說明問題。

使用該屬性指定用來填充Repeater控件的數(shù)據(jù)源。DataSource可以是任何System.Collections.IEnumerable對象,

如用于訪問數(shù)據(jù)庫的System.Data.DataView、System.Collections.ArrayList、System.Collections.Hashtable、數(shù)組或IListSource對象。

常用的數(shù)據(jù)源:

一個(gè)DataTable

一個(gè)DataView

一個(gè)DataSet

任何實(shí)現(xiàn)IListSource接口的組件

任何實(shí)現(xiàn)IList接口的組件

注意:

若要綁定到對象的強(qiáng)類型數(shù)組,該對象類型必須包含公共屬性。

下面通過幾個(gè)簡單的實(shí)例來介紹DataSource的具體應(yīng)用。

<1>綁定DataTable,一般都是從數(shù)據(jù)庫取出數(shù)據(jù),然后直接進(jìn)行綁定,具體的數(shù)據(jù)庫操作的邏輯不再提供。想必大家都已經(jīng)非常熟悉。綁定DataView與這個(gè)類似。

程序代碼

 
 
 
  1. privatevoidBindData()  
  2. {  
  3. //通過業(yè)務(wù)邏輯,直接調(diào)用數(shù)據(jù)庫中的數(shù)據(jù)  
  4. DataTablenTable=getTable();  
  5.  
  6. Repeater1.DataSource=nTable;  
  7. Repeater1.DataBind();  

HTML代碼

C#數(shù)據(jù)綁定控件程序代碼

 
 
 
  1. <asp:RepeaterIDasp:RepeaterID="Repeater1"runat="server"> 
  2.  
  3.  
  4.  
  5. <thscopethscope="col"> 
  6. 姓名 th> 
  7.  
  8.  
  9. 年齡 th> 
  10. tr> 
  11. HeaderTemplate> 
  12.  
  13.  
  14. <%#Eval("Key")%> 
  15. td> 
  16.  
  17. <%#Eval("value")%> 
  18. td> 
  19. tr> 
  20. ItemTemplate> 
  21.  
  22. table> FooterTemplate> 
  23. asp:Repeater> 
  24. <2>綁定Array、ArrayList、List、一維數(shù)組之類,里面存儲(chǔ)簡單的數(shù)據(jù)。

    ArrayList

    C#數(shù)據(jù)綁定控件程序代碼

     
     
     
    1. privatevoidBindData()  
    2. {  
    3. ArrayListlist=newArrayList();  
    4. list.Add("Jim");  
    5. list.Add("Tom");  
    6. list.Add("Bluce");  
    7. list.Add("Mary");  
    8.  
    9. Repeater1.DataSource=list;  
    10. Repeater1.DataBind();  

    HTML適當(dāng)改變

    程序代碼

     
     
     
    1. <asp:RepeaterIDasp:RepeaterID="Repeater1"runat="server"> 
    2. <thscopethscope="col">姓名 th> tr> HeaderTemplate> 
    3. <%#Container.DataItem%> td> tr> ItemTemplate> 
    4. table> FooterTemplate> 
    5. asp:Repeater> 
    6. <3>綁定Dictionary、HashTable

      Dictionary

      C#數(shù)據(jù)綁定控件程序代碼

       
       
       
      1. privatevoidBindData()  
      2. {  
      3. Dictionary,int>dic=newDictionary,int>();  
      4. dic.Add("Jim",21);  
      5. dic.Add("Tom",26);  
      6. dic.Add("Bluce",33);  
      7. dic.Add("Mary",18);  
      8.  
      9. Repeater1.DataSource=dic;  
      10. Repeater1.DataBind();  

      HTML代碼

      程序代碼

       
       
       
      1. <asp:RepeaterIDasp:RepeaterID="Repeater1"runat="server"> 
      2. <thscopethscope="col">姓名 th>
        年齡 th> tr> HeaderTemplate> 
      3. <%#Eval("Key")%> td><%#Eval("value")%> td> tr> ItemTemplate> 
      4. table> FooterTemplate> 
      5. asp:Repeater> 
      6. <4>綁定對象集合,IList等。這個(gè)很是有用,在我們進(jìn)行數(shù)據(jù)查詢的時(shí)候,經(jīng)常從數(shù)據(jù)庫取出數(shù)據(jù),為了方便操作,需要封裝成對象,但是有的時(shí)候需要將這些對象以列表的形式顯示出來,一種解決方案:對象轉(zhuǎn)換為DataTable,另一種就是直接調(diào)用數(shù)據(jù)庫。這兩種方案,并不是很理想。而這里直接將對象集合直接綁定到數(shù)據(jù)顯示控件,給我指明一條出路。其實(shí),在PetShop4.0就是利用這一點(diǎn),綁定ICollection或者IList。簡單明了。

        一個(gè)簡單的用戶類,包含兩個(gè)公共屬性。

        程序代碼

         
         
         
        1. usingSystem;  
        2. usingSystem.Data;  
        3.  
        4. ///  
        5. ///SummarydescriptionforUser  
        6. ///
        7.  
        8. publicclassUser  
        9. {  
        10. privatestring_Name;  
        11. publicstringName  
        12. {  
        13. get{return_Name;}  
        14. set{_Name=value;}  
        15. }  
        16. privateint_Age;  
        17. publicintAge  
        18. {  
        19. get{return_Age;}  
        20. set{_Age=value;}  
        21. }  
        22. publicUser()  
        23. {  
        24. //  
        25. //TODO:Addconstructorlogichere  
        26. //  
        27. }  
        28. publicUser(stringname,intage)  
        29. {  
        30. _Name=name;  
        31. _Age=age;  
        32. }  

        綁定對象集合:

        IList

        程序代碼

         
         
         
        1. privatevoidBindData()  
        2. {  
        3. Useruser1=newUser("Jim",21);  
        4. Useruser2=newUser("Tom",23);  
        5. Useruser3=newUser("Bluce",33);  
        6. Useruser4=newUser("Mary",18);  
        7.  
        8. IListlist=newList();  
        9. list.Add(user1);  
        10. list.Add(user2);  
        11. list.Add(user3);  
        12. list.Add(user4);  
        13.  
        14. Repeater1.DataSource=list;  
        15. Repeater1.DataBind();  

        對應(yīng)的Repeater綁定對象的公共屬性:

        C#數(shù)據(jù)綁定控件程序代碼

         
         
         
        1. <asp:RepeaterIDasp:RepeaterID="Repeater1"runat="server"> 
        2.  
        3.  
        4.  
        5. <thscopethscope="col"> 
        6. 姓名 th> 
        7.  
        8.  
        9. 年齡 th> 
        10. tr> 
        11. HeaderTemplate> 
        12.  
        13.  
        14. <%#Eval("Name")%> 
        15. td> 
        16.  
        17. <%#Eval("Age")%> 
        18. td> 
        19. tr> 
        20. ItemTemplate> 
        21.  
        22. table> FooterTemplate> 
        23. asp:Repeater> 

        24. 文章標(biāo)題:C#數(shù)據(jù)綁定控件中的DataSource屬性
          網(wǎng)站鏈接:http://m.5511xx.com/article/cddoijh.html