下面是详细的“ASP.NET数据绑定之DataList控件实战篇”的攻略。
前言
DataList控件作为ASP.NET中常用的数据展示控件之一,常用于以列表形式展示数据。数据绑定是使用DataList控件的基础,掌握数据绑定对于使用DataList控件非常重要。本篇攻略主要介绍如何使用ASP.NET实现DataList控件的数据绑定。
准备工作
需要使用Visual Studio等支持ASP.NET的开发环境。在创建了ASP.NET Web应用程序后,需要在工程中添加DataList控件,可以使用如下的代码添加:
<asp:DataList ID="DataList1" runat="server"></asp:DataList>
DataList控件的数据绑定
DataList控件的数据绑定可以使用ASP.NET提供的DataSource属性。在DataSource属性中可以指定需要绑定的数据源。下面介绍两种数据源的绑定方法。
绑定List集合数据源
List集合是一种常见的数据源,DataList控件支持绑定List集合数据源。例如,有如下的Person类和List集合:
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
List<Person> personList = new List<Person>()
{
new Person() { Name = "张三", Age = 18 },
new Person() { Name = "李四", Age = 20 },
new Person() { Name = "王五", Age = 22 }
};
将personList绑定到DataList控件的DataSource属性上,可以使用如下的代码:
DataList1.DataSource = personList;
DataList1.DataBind();
在DataList控件中,可以使用如下的代码展示绑定的数据:
<asp:DataList ID="DataList1" runat="server">
<ItemTemplate>
<p><%# Eval("Name") %></p>
<p><%# Eval("Age") %></p>
</ItemTemplate>
</asp:DataList>
绑定DataTable数据源
除了绑定List集合数据源外,DataList控件还支持绑定DataTable数据源。例如,有如下的DataTable:
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("Name", typeof(string)));
dt.Columns.Add(new DataColumn("Age", typeof(int)));
DataRow dr1 = dt.NewRow();
dr1["Name"] = "张三";
dr1["Age"] = 18;
dt.Rows.Add(dr1);
DataRow dr2 = dt.NewRow();
dr2["Name"] = "李四";
dr2["Age"] = 20;
dt.Rows.Add(dr2);
DataRow dr3 = dt.NewRow();
dr3["Name"] = "王五";
dr3["Age"] = 22;
dt.Rows.Add(dr3);
将dt绑定到DataList控件的DataSource属性上,可以使用如下的代码:
DataList1.DataSource = dt;
DataList1.DataBind();
在DataList控件中,可以使用如下的代码展示绑定的数据:
<asp:DataList ID="DataList1" runat="server">
<ItemTemplate>
<p><%# Eval("Name") %></p>
<p><%# Eval("Age") %></p>
</ItemTemplate>
</asp:DataList>
示例说明
下面通过两个简单的示例说明DataList控件的数据绑定。
示例一
使用List集合数据源,展示用户列表信息。
public class User
{
public string Name { get; set; }
public string Email { get; set; }
}
List<User> userList = new List<User>()
{
new User() { Name = "张三", Email = "zhangsan@163.com" },
new User() { Name = "李四", Email = "lisi@126.com" },
new User() { Name = "王五", Email = "wangwu@qq.com" }
};
DataList1.DataSource = userList;
DataList1.DataBind();
在DataList控件中,可以使用如下的代码展示绑定的数据:
<asp:DataList ID="DataList1" runat="server">
<ItemTemplate>
<p><%# Eval("Name") %></p>
<p><%# Eval("Email") %></p>
</ItemTemplate>
</asp:DataList>
以上代码将展示如下的用户列表信息:
张三
zhangsan@163.com
李四
lisi@126.com
王五
wangwu@qq.com
示例二
使用DataTable数据源,展示学生成绩信息。
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("Name", typeof(string)));
dt.Columns.Add(new DataColumn("Chinese", typeof(int)));
dt.Columns.Add(new DataColumn("Math", typeof(int)));
dt.Columns.Add(new DataColumn("English", typeof(int)));
DataRow dr1 = dt.NewRow();
dr1["Name"] = "张三";
dr1["Chinese"] = 90;
dr1["Math"] = 80;
dr1["English"] = 70;
dt.Rows.Add(dr1);
DataRow dr2 = dt.NewRow();
dr2["Name"] = "李四";
dr2["Chinese"] = 80;
dr2["Math"] = 90;
dr2["English"] = 70;
dt.Rows.Add(dr2);
DataRow dr3 = dt.NewRow();
dr3["Name"] = "王五";
dr3["Chinese"] = 70;
dr3["Math"] = 80;
dr3["English"] = 90;
dt.Rows.Add(dr3);
DataList1.DataSource = dt;
DataList1.DataBind();
在DataList控件中,可以使用如下的代码展示绑定的数据:
<asp:DataList ID="DataList1" runat="server">
<ItemTemplate>
<p><%# Eval("Name") %></p>
<p>语文:<%# Eval("Chinese") %></p>
<p>数学:<%# Eval("Math") %></p>
<p>英语:<%# Eval("English") %></p>
</ItemTemplate>
</asp:DataList>
以上代码将展示如下的学生成绩信息:
张三
语文:90
数学:80
英语:70
李四
语文:80
数学:90
英语:70
王五
语文:70
数学:80
英语:90
结论
本篇攻略主要介绍了如何使用ASP.NET实现DataList控件的数据绑定。DataList控件支持绑定多种数据源,掌握数据绑定对于使用DataList控件非常重要。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:ASP.NET数据绑定之DataList控件实战篇 - Python技术站