数据绑定技术_单值数据绑定示例;将 DataTable,DataSet,DataView,DataReader 绑定到 DataGrid 控件示例;DataBinder.Eval;数组的值赋给ListBox1;Hashtable 绑定到;RadioButtonList;将XML 文件做为数据源绑定到控件
1 单值数据绑定示例1
<script language="C#" runat="server">
void Page_Load(Object sender, EventArgs e)
{
Page.DataBind();
}
string Message{
get {
return "abcdefg";
}
}
int MessageCount{
get {
return Message.Length;
}
}
</script>
<asp:ListBox id="ListBox1" runat="server"></asp:ListBox>
<asp:TextBox id="TextBox1" runat="server" Text='<%# Message %>'>
</asp:TextBox>
<asp:Label id="Label1" runat="server" Text='<%# MessageCount %>'>
</asp:Label>
2 将 DataTable 绑定到 DataGrid 控件示例
void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
// 创建 DataTable 对象
DataTable dt = new DataTable();
DataRow dr;
// 创建 DataTable 中的 DataColumn 列
dt.Columns.Add(new DataColumn("ID", typeof(System.Int32)));
dt.Columns.Add(new DataColumn("随机数", typeof(System.String)));
dt.Columns.Add(new DataColumn("时间", typeof(System.DateTime)));
// 填充数据到 DataTable 中
for(int i=1; i<9; i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = (new Random()).Next(0, 99);
dr[2] = DateTime.Now;
dt.Rows.Add(dr);
}
// 数据绑定代码
DataGrid1.DataSource = dt;
DataGrid1.DataBind();
}
}
</script>
3 DataSet 绑定到DataGrid
myDS.Tables.Add(dt);
DataGrid1.DataSource = myDS;
4 DataView 绑定到DataGrid
dataGrid1.DataSource = new DataView(dt);
dataGrid1.DataBind();
5 DataReader 绑定到DataGrid
SqlDataReader dr = myCommand.ExecuteReader();
DataGrid1.DataSource = dr;
DataGrid1.DataBind();
6 // 将Repeater控件进行数据绑定[DataBinder.Eval]
MyRepeater.DataSource = ds.Tables["Titles"].DefaultView;
MyRepeater.DataBind();
<td>
<%# DataBinder.Eval(Container.DataItem, "title") %>
</td>
<td>
<%# DataBinder.Eval(Container.DataItem, "title_id") %>
</td>
7 如何将数组的值赋给ListBox1
ArrayList values = new ArrayList();
values.Add ("北京");
values.Add ("上海");
ListBox1.DataSource = values;
ListBox1.DataBind();
8 Hashtable 绑定到 RadioButtonList Web 控件示例
// 创建 Hashtable 对象并填充数据
Hashtable hash = new Hashtable();
hash.Add("北京", "010");
hash.Add("广州", "020");
// 进行数据绑定
RadioButtonList1.DataSource = hash;
RadioButtonList1.DataTextField = "Key";
RadioButtonList1.DataValueField = "Value";
RadioButtonList1.DataBind();
9 将 XML 文件做为数据源绑定到控件
// 创建 DataSet 对象
DataSet myDS = new DataSet();
// 将 XML 文件读入 DataSet
myDS.ReadXml(Server.MapPath("people.xml"));
// 显示 DataSet 中表的名称
Label1.Text = "表的名称是:" + myDS.Tables[0].TableName;
// 绑定到 DataGrid
DataGrid1.DataSource = myDS.Tables[0];
DataGrid1.DataBind();