张博的技术菜园子

导航

如何使用ArrayList/Hashtable绑定DataGrid/DataList/Reapter ?

这些控件是BaseDataList类派生的控件,而数据源DataSource必须是实现了System.Collections.IEnumerable 接口(如 System.Data.DataView、System.Collections.ArrayList 和 System.Collections.Hashtable)的对象。

DataView绑定的例子我就不说了,简单写一下如何使用ArrayList和Hashtable。

前台:

<asp:DataGrid id="DataGrid1" runat="server" AutoGenerateColumns="False">

 <Columns>

  <asp:TemplateColumn>

   <ItemTemplate>

    <asp:Label runat="server" Text='<%# Container.DataItem %>'>

    </asp:Label>

   </ItemTemplate>

  </asp:TemplateColumn>

 </Columns>

</asp:DataGrid>

<asp:DataList id="DataList1" runat="server">

 <ItemTemplate>

  Key:<%# DataBinder.Eval(Container.DataItem,"Key") %>

  Value:<%# DataBinder.Eval(Container.DataItem,"Value") %><br>

 </ItemTemplate>

</asp:DataList>

后台:

private void Page_Load(object sender, System.EventArgs e)

{

 ArrayList al = new ArrayList();

 al.Add("我是中国人!!!");

 al.Add("我热爱自己的祖国!!!");

 DataGrid1.DataSource = al;

 DataGrid1.DataBind();

 Hashtable ht = new Hashtable();

 ht.Add("陈水扁","白痴");

 ht.Add("吕秀莲","无赖");

 DataList1.DataSource = ht;

 DataList1.DataBind();

}

posted on 2010-01-16 11:05  蕊蕊  阅读(361)  评论(0编辑  收藏  举报