Repeater中DataSource和数据显示总结

今天小编就为大家带来一篇Repeater中DataSource和数据显示总结的文章。小编觉得挺不错的,为此分享给大家做个参考。一起跟随小编过来看看吧。

公司主营业务:网站设计、成都网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出临湘免费做网站回馈大家。

Content
一、Repeater要能显示数据,其要有数据源,而了解数据源类型,才能匹配正确的数据源:
        查看MSDN:Repeater 的 DataSource 可以是任何 System.Collections.IEnumerable 集合 (如) 访问数据库的 System.Data.DataView , System.Collections.ArrayList或数组或 IListSource 对象。
只要确保数据类型是上所描述,就可以作为Repeater的数据源,就可以通过Repeater来显示数据。
注:为Repeater指定数据源后,记得绑定数据(eg:this.Repeater1.DataBind();).
二、通过代码来展示数据的显示:
    1.页面运行结果:
Repeater中DataSource和数据显示总结
2. 后台主要代码:
  1. #region 定义List的数据源类型
  2. List testDS1 =new List() {"1","2" };//初始化数据
  3. this.Repeater1.DataSource = testDS1;//指定数据源
  4. this.Repeater1.DataBind();//绑定数据
  5. #endregion
  6. #region   定义List的数据源类型
  7. List testDS2 =new List() {new person(1,"person1"),new person(2,"person2") };//初始化数据
  8. this.Repeater2.DataSource = testDS2;//指定数据源
  9. this.Repeater2.DataBind();//绑定数据
  10. #endregion
  11. #region 定义Dictionary的数据源类型
  12. Dictionary testDS3 =new Dictionary() { {"1","value1" }, {"2","value2" } };//初始化数据
  13. this.Repeater3.DataSource = testDS3;//指定数据源
  14. this.Repeater3.DataBind();//绑定数据
  15. #endregion
3. 前台主要代码:
  1.  
  2.     第一个repeater显示的数据:  
  3.       
  4.           
  5.               
  6.                 
  7.  
  8.           
  9.           
  10.             
  11.  
  12.                 
  13.  
  14.             
  15.  
  16.           
  17.           
  18.             
  19.  
  20.                     显示  
  21.                 
  22.  
  23.                     <%#Container.DataItem %>  
  24.                 
  25.  
  26.           
  27.       
 
  •  
  •     第二个repeater显示的数据:  
  •       
  •           
  •               
  •                 
  •  
  •                 
  •  
  •           
  •           
  •             
  •  
  •                 
  •  
  •                 
  •  
  •             
  •  
  •           
  •           
  •             
  •  
  •                     Age  
  •                 
  •  
  •                     Name  
  •                 
  •  
  •                     <%#DataBinder.Eval(Container.DataItem,"Age") %>   
  •                 
  •  
  •                    <%#DataBinder.Eval(Container.DataItem,"Name") %>  
  •                 
  •  
  •           
  •       
  •  
  •  
  •     第三个repeater显示的数据:  
  •       
  •           
  •               
  •                 
  •  
  •                 
  •  
  •           
  •           
  •             
  •  
  •                 
  •  
  •                 
  •  
  •             
  •  
  •           
  •           
  •             
  •  
  •                     Key  
  •                 
  •  
  •                     Value  
  •                 
  •  
  •                     <%#Eval("key") %>  
  •                 
  •  
  •                     <%#Eval("value") %>  
  •                 
  •  
  •           
  •       
  •  
           由于"2. 后台主要代码"指定了repeater的数据源,在"3. 前台主要代码"  在中,如果数据源没有字段名,通过 <%#Container.DataItem %> 来显示数据,如第一个Repeater所示;如果数据源存在字段名通过<%#Eval("字段名")%>或者<%#DataBinder.Eval(Container.DataItem,"字段名")%>来显示数据。使用以上来显示一般数据就可以,如果数据是需要修改的,则使用Bind("字段名").
    4.其它有用小结:
    Eval和Bind区别:Eval是只读方法,将其参数中字段的值作为字符串返回;Bind则可读可写,可以检索数据绑定控件的值并将任何修改提回会数据库。
    Container.DataItem和DataBinder:
    DataBinder是System.Web里面的一个静态类,它提供了Eval方法用于简化数据绑定表达式的编写

    Container则是ASP.NET页面编译器在数据绑定事件处理程序内部声明的局部变量,其类型是可以进行数据绑定的控件的数据容器类型(如在Repeater内部的数据绑定容器叫RepeaterItem),在这些容器类中基本都有DataItem属性,因此你可以写Container.DataItem,这个属性返回的是你正在被绑定的数据源中的那个数据项。如果你的数据源是DataTable,则这个数据项的类型实际是DataRowView。

    关于Repeater中DataSource和数据显示的总结就分享到这里了,希望以上内容可以对大家有一定的参考价值,如果喜欢本篇文章,不妨把它分享出去让更多的人看到。


    网站名称:Repeater中DataSource和数据显示总结
    文章URL:http://pwwzsj.com/article/iggihd.html

    其他资讯