数据绑定服务器控件
2006-04-15 19:44
423 查看
[b]绑定到集合和列表
关键字 ArrayList Select DataTable DataRelation 演示代码
DataGrid、ListBox 和 HTMLSelect 这样的列表服务器控件将集合用作数据源。
这些控件只能绑定到支持 IEnumerable、ICollection 或 IListSource 接口的集合。
最常见的是绑定到 ArrayList、Hashtable、DataView 和 DataReader。 关键字:ArrayList Select DataTableDataRelation代码演示
[/b]
AlternatingItemTemplate :指定如何显示每一其它选项。
ItemTemplate :指定如何显示选项。(AlternatingItemTemplate可以覆盖这一模板。)
HeaderTemplate :建立如何显示标题。
FooterTemplate :建立如何显示页脚。
SeparatorTemplate :指定如何显示不同选项之间的分隔符。
DataBinder.Eval() //方法:该方法用在运行时计算绑定表达式。该方法有三个参数:
A、数据项的命名容器:命名容器是一个对象引用,该对象即是计算表达式所针对的对象。如果绑定是针对列表控件(如Repeater、DataList或DataGrid)的,则命名容器将始终是Container.DataItem。如果绑定是针对页面的,则命名容器是Page。
B、 数据字段名:绑定表格的列名(此例如“平方”等)。
C、 格式字符串
如果要求高性能,不建议使用DataBinder.Eval()方法
<%@ Import namespace="System.Data" %>
<%# DataBinder.Eval(Container.DataItem,"xxxx")%> 或者 <%# DataBinder.Eval(Container,"DataItem.xxxx")%>
<%# ((DataRowView)Container.DataItem)["xxxx"]%> 这种用法其实和 <%# ((DictionaryEntry)Container.DataItem).Key%>是一个道理。 <%# ((DataRowView)Container.DataItem).Row.GetChildRows("rebook") %>
DataSource='<%# GetGlobalCategory(int.Parse(DataBinder.Eval(Container.DataItem, "CategoryID").ToString())) %>'>
<%# Container.DataItem.Row.GetChildRows("myrelation") %>
//动态数组--实现 IList 接口
DropDown1.SelectedItem.Text;[b] //选择的内容
ArrayList values = new ArrayList();
values.Add ("IN>");
values.Add ("KS");
values.Add ("MD");
values.Add ("MI");
values.Add ("OR");
values.Add ("TN");
DropDown1.DataSource = values;
[/b]
// 控件编程方程生成表格
Select1.Items.Count //合计
Select1.Items[i].Selected //检查被选择中值
Select1.Items[i].Text; //内容
<select id="Select1" Multiple="True" runat="server">
<option value="1" Selected="True"> Item 1 </option>
<option value="2"> Item 2 </option>
<option value="3"> Item 3 </option>
<option value="4"> Item 4 </option>
<option value="5"> Item 5 </option>
<option value="6"> Item 6 </option>
</select>
//内存中的表
DataSet.Tables.Add(DataTable); //把表赋给DataSet
DataSet //多个表集合
DataTable //内存中数据的一个表
DataColumn //表的列集合
DataRow //表的行集合
DataTable.Columns.Add(DataColumn); //增加1列
DataTable.NewRow() //方法来生成此DataTable结构的新行
DataColumn.Expression //属性的表达式创建一些列
ChildRelations //父表
ParentRelations //子表
DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add(new DataColumn("整数值", typeof(Int32)));
dt.Columns.Add(new DataColumn("字符串值", typeof(string)));
dt.Columns.Add(new DataColumn("日期时间值", typeof(DateTime)));
dt.Columns.Add(new DataColumn("布尔值", typeof(bool)));
for (int i = 1; i <= 9; i++)
{
dr = dt.NewRow();
dr[0] = i; dr[1] = "项 " + i.ToString();
dr[2] = DateTime.Now; dr[3] = (i % 2 != 0) ? true : false; dt.Rows.Add(dr);
}
dataGrid1.DataSource = new DataView(dt);
//在内存中给DataTable间建立关系
// 关系名 父列 子表列 ----建立关系的两个列的 DataType 值必须相同
DataRelation(String, DataColumn, DataColumn) public void Page_Load(object sender, EventArgs e)
{
SqlConnection cnn = new SqlConnection("server=(local);database=pubs;uid=sa;pwd=;");
SqlDataAdapter cmd1 = new SqlDataAdapter("select * from authors",cnn);
DataSet ds = new DataSet();
cmd1.Fill(ds,"authors"); SqlDataAdapter cmd2 = new SqlDataAdapter("select * from titleauthor",cnn);
cmd2.Fill(ds,"titles"); ds.Relations.Add("myrelation"),ds.Tables["authors"].Columns["au_id"],ds.Tables["titles"].Columns["au_id"]); parent.DataSource = ds.Tables["authors"];
Page.DataBind(); cnn.Close();
} http://qinfei.cnblogs.com/archive/2005/11/03/268203.aspx
相关文章推荐
- ASP.NET 非服务器控件绑定数据
- 用户控件和服务器控件的数据绑定
- ASP.NET 数据绑定 Web 服务器控件概述
- 数据绑定多记录 Web 服务器控件
- 服务器控件1:控件数据绑定及页面数据绑定
- 关于Asp.Net 服务器控件OnClientClick属性数据绑定
- 用户控件和服务器控件的数据绑定
- ASP.NET 数据绑定 Web 服务器控件概述
- 《ASP.NET1200例》嵌套在DataLisT控件中的其他服务器控件---DropDownList控件的数据绑定
- 数据绑定服务器控件的 几种方式
- 数据绑定服务器控件
- Repeater中的CheckBox绑定和存储数据之服务器控件
- datarow[] 数组绑定到.net服务器数据控件(repeate、gridview等)
- 用户控件和服务器控件的数据绑定
- 数据绑定服务器控件
- 数据绑定服务器控件
- 数据绑定服务器控件
- 非服务器控件绑定数据
- ASP.NET数据绑定控件数据项中的服务器控件注册JS方法
- ASP.NET - 将数据绑定到 TreeView Web 服务器控件