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

来源:互联网 发布:免费网络加速 编辑:程序博客网 时间:2024/06/09 18:45

如何使用ArrayList/Hashtable绑定DataGrid/DataList/Reapter ?这两天有朋友在MSN上问我这个问题。
这些控件是BaseDataList类派生的控件,而数据源DataSource必须是实现了System.Collections.IEnumerable 接口(如 System.Data.DataViewSystem.Collections.ArrayListSystem.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();
}

如图:

ArrayList/Hashtable 绑定 DataGrid/DataList

原创粉丝点击