成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C#數據綁定控件中的DataSource屬性

開發 后端
C#數據綁定控件,都有DataSource屬性,用于指定數據源。通常情況下,也是比較常用的就是數據源是數據表(DataTable),其實DataSource的范圍很廣,我們可以在深入研究的同時,改善我們的程序。

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

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

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

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

常用的數據源:

一個DataTable

一個DataView

一個DataSet

任何實現IListSource接口的組件

任何實現IList接口的組件

注意:

若要綁定到對象的強類型數組,該對象類型必須包含公共屬性。

下面通過幾個簡單的實例來介紹DataSource的具體應用。

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

程序代碼

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

HTML代碼

C#數據綁定控件程序代碼

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

<2>綁定Array、ArrayList、List、一維數組之類,里面存儲簡單的數據。

ArrayList

C#數據綁定控件程序代碼

  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適當改變

程序代碼

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

<3>綁定Dictionary、HashTable

Dictionary

C#數據綁定控件程序代碼

  1. privatevoidBindData()  
  2. {  
  3. Dictionary<string,int>dic=newDictionary<string,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. <HeaderTemplate><table><tr><thscopethscope="col">姓名th><th>年齡th>tr>HeaderTemplate> 
  3. <ItemTemplate><tr><td><%#Eval("Key")%>td><td><%#Eval("value")%>td>tr>ItemTemplate> 
  4. <FooterTemplate>table>FooterTemplate> 
  5. asp:Repeater> 

<4>綁定對象集合,IList等。這個很是有用,在我們進行數據查詢的時候,經常從數據庫取出數據,為了方便操作,需要封裝成對象,但是有的時候需要將這些對象以列表的形式顯示出來,一種解決方案:對象轉換為DataTable,另一種就是直接調用數據庫。這兩種方案,并不是很理想。而這里直接將對象集合直接綁定到數據顯示控件,給我指明一條出路。其實,在PetShop4.0就是利用這一點,綁定ICollection或者IList。簡單明了。

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

程序代碼

  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. IList<User>list=newList<User>();  
  9. list.Add(user1);  
  10. list.Add(user2);  
  11. list.Add(user3);  
  12. list.Add(user4);  
  13.  
  14. Repeater1.DataSource=list;  
  15. Repeater1.DataBind();  

對應的Repeater綁定對象的公共屬性:

C#數據綁定控件程序代碼

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

【編輯推薦】

  1. C#結構體構造函數的應用
  2. C#結構體定義的詳解
  3. C#的結構體使用實例淺析
  4. C#結構體變量學習淺談
  5. 解析C#結構體指針
責任編輯:彭凡 來源: 百度空間
相關推薦

2009-08-21 15:57:58

C# DataSour

2009-08-10 16:47:45

Visual C#數據

2009-09-15 15:14:27

C# 綁定

2009-09-11 12:17:59

C#控件屬性

2011-05-20 16:07:29

C#

2009-09-15 15:40:25

C# 綁定

2009-09-01 17:41:45

C# HelpAttr

2009-08-18 17:41:22

C# ListView

2009-08-11 14:45:41

C# DataGrid

2009-08-19 11:21:02

C# ListBox控

2009-08-24 11:23:41

C# TimeLabe

2009-09-17 17:13:54

C#數組

2009-08-03 14:42:50

C#自定義控件

2009-08-11 15:46:15

C#日歷控件

2009-08-26 17:28:48

C# DateTime

2009-08-24 16:39:19

C# 泛型應用

2009-09-11 13:03:48

Scope屬性

2009-09-11 11:33:58

C# WinForm控Attribute

2009-08-26 16:46:06

C# ThreadSt

2009-08-19 16:56:45

C#和ADO.NET
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品欧美一区二区精品久久久 | 亚洲精品久久久久久久久久久久久 | 啪啪av | 操操网站 | 国产精品一区二区三区在线 | 欧美精品久久久久久久久老牛影院 | 美日韩免费视频 | 伊人久久成人 | 免费99精品国产自在在线 | 成年人免费在线视频 | 午夜激情影院 | 亚洲免费成人av | 欧美激情精品久久久久久变态 | 欧美成视频在线观看 | 欧美理论在线观看 | 在线观看中文字幕 | 国产一区二区精品在线观看 | 中文字幕不卡在线观看 | 国产一二区视频 | 视频一区在线观看 | 伊人久久综合 | 国产精品久久久久久婷婷天堂 | 午夜伊人 | 国产精品久久久久久模特 | 久久性av | 国产精品亚洲欧美日韩一区在线 | 夜夜夜夜夜夜曰天天天 | 精品在线播放 | 国产精品视频免费观看 | 久久国产精品视频免费看 | 超碰在线人人干 | 亚洲精品一区二区 | 日韩精品一区二区三区视频播放 | 国产精品96久久久久久 | 91偷拍精品一区二区三区 | 国产一级片在线播放 | 欧美电影一区 | 国产一区免费视频 | 国产一区二区三区四区三区四 | 午夜精品视频 | 欧美一级一 |