DropDownListid="ddl"runat="server"/>
三、将DataReader读取的数据动态绑定到DropDownList
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!
Page.IsPostBack)
{
stringmyconnstr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+Server.MapPath(".")+"..\\database\\db.mdb";
OleDbConnnectionmyconn=newOleDbConnnection(myconnstr);
stringsqlstr="select*fromtest";
OleDbCommandmyComm=newOleDbCommand(sqlstr,myconn);
myComm.Connection.Open();
OleDbDataReaderdr=myComm.ExecuteReader();
while(dr.Read())
{
bj.Items.Add(newListItem(dr["bjmc"].ToString(),dr["id"].ToString()));//增加Item
//或者这样也能绑定,
//DropDownList1.Items.Add(newListItem(myReader[1].ToString(),myReader[0].ToString()));//增加Item
//都是要在知道Sql语句或者数据表结构的前提下才能这样绑定
}
dr.Close();
}
}
四、将DataSet读取的数据动态绑定到DropDownList
SqlConnectionsqlconn=newSqlConnection();
sqlconn.ConnectionString="workstationid=localhost;packetsize=4096;user
id=sa;datasource=db1;persistsecurityinfo=False;initialcatalog=DB";
sqlconn.Open();
SqlDataAdaptersqldar=newSqlDataAdapter("selectUserNamefromforums_Users",sqlconn);
sqldar.SelectCommand.CommandType=CommandType.Text;
DataSetDs=newDataSet();
sqldar.Fill(Ds,"Users");
ddl.DataSource=Ds.Tables["Users"].DefaultView;
ddl.DataTextField="UsersName";
ddl.DataBind();
sqlconn.Close();
第一行是创建一个sql连接对象sqlconn;
第二行是给新建的sql连接对象sqlconn的连接字符串赋予正确的值;
第三行是让sql连接对象sqlconn打开,连接sql数据库;
第四行是创建一个sql适配器对象sqldar,并同时让其使用sqlconn对象执行一条sql查询语句;
第五行是设置sqldar对象的命令类型为文本型;
第六行是创建一个数据集对象Ds;
第七行是将sqldar执行的结果填充到Ds中,并将命名为Users;
第八行是将DropDownList的数据源设置为Ds的Users,并使用默认的查看模式;
第九行是设置DropDownList空间的显示项对应的字段名UsersName;
第十行是执行DropDownList的数据绑定方法;
第十一行是关闭sqlconn对象。
五、使用DataBinder.Eval(Container.DataItem,"表字段")输出绑定数据protectedvoidPage_Load(objectsender,EventArgse)
{
if(!
Page.IsPostBack)
{
stringmyconnstr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+Server.MapPath(".")+"..\\database\\db.mdb";
OleDbConnnectionmyconn=newOleDbConnnection(myconnstr);
stringsqlstr="select*fromtest";
OleDbCommandmyComm=newOleDbCommand(sqlstr,myconn);
myComm.Connection.Open();
OleDbDataReaderdr=myComm.ExecuteReader();
ddl.DataSource=dr;
ddl.DataBind();绑定倒DD1中
}
}
在UI界面的DDL中直接调用,绑定的方法调用
DataBinder.Eval(Container.DataItem,"表字段")
8.ListBox控件
基本上同DropDownList控件
9DatAGrid控件
1)数据格式设置
格式字符串资料结果
"{0:
C}"12345.6789$12,345.68
"{0:
C}"-12345.6789($12,345.68)
"{0:
D}"1234512345
"{0:
D8}"1234500012345
"{0:
E}"12345.67891234568E+004
"{0:
E10}"12345.67891.2345678900E+004
"{0:
F}"12345.678912345.68
"{0:
F0}"12345.678912346
"{0:
G}"12345.678912345.6789
"{0:
G7}"1234567891.234568E8
"{0:
N}"12345.678912,345.68
"{0:
N4}"123456789123,456,789.0000
"Total:
{0:
C}"12345.6789Total:
$12345.68
其常用的日期格式如下表所示:
格式说明输出格式
d精简日期格式MM/dd/yyyy
D详细日期格式dddd,MMMMdd,yyyy
f完整格式(longdate+shorttime)dddd,MMMMdd,yyyyHH:
mm
F
完整日期时间格式
(longdate+longtime)
dddd,MMMMdd,yyyyHH:
mm:
ss
g一般格式(shortdate+shorttime)MM/dd/yyyyHH:
mm
G一般格式(shortdate+longtime)MM/dd/yyyyHH:
mm:
ss
m,M月日格式MMMMdd
s适中日期时间格式yyyy-MM-ddHH:
mm:
ss
t精简时间格式HH:
mm
T详细时间格式HH:
mm:
ss
2)事件
1、ItemCommand、CancelCommand、DeleteCommand、EditCommand、UpdateCommand
也就是DataGrid中,点击Button、LinkButton后执行的事件,执行的事件取决于按钮的CommandName。
其实最主要的一个是ItemCommand,而后面四个都只是ItemCommand的一小部分,
比如一个按钮的CommandName为"Cancel",当返回后,首先执行的是ItemCommand事件,然后才是CancelCommand事件。
2、PageIndexChanged
如果你的DataGrid是分页的,那当你在DataGrid上点击Pager上的1、2、3或者<、>时,就会激发这个事件。
在这个事件里面,你可以用e.NewPageIndex来读取要改变的页,然后赋值给DataGrid的CurrentPageIndex属性,最后不要忘了,还要设置DataSource,还要执行DataBind。
注意:
DataList中没有这个事件,如果需要在DataList中分页,可以一段一段的读取数据,然后把当前段的数据绑定到DataList上。
3、ItemDataBound,ItemCreated
首先要说的是这两个事件的发生时间。
ItemDataBound嘛,只要执行了DataBind方法,就会马上激发这个事件。
ItemCreated呢,如果页面是第一次访问(Page.IsPostBack=false),那在第一次执行DataBind的时候,会先激发ItemCreated事件,也就是说,执行了DataBind后,首先会用ItemCreated来建立Header行,然后用ItemDataBound来绑定Header行,再用ItemCreated来建立第一行,再调用ItemDataBound来绑定第一行,也就是说ItemCreated和ItemDataBound是交替执行的。
页面返回时,也会执行ItemCreated事件,在Page_Load之前,但是这时候就不会再执行ItemDataBound事件了。
所以,如果你想在DataGrid里动态添加什么控件,就需要在ItemCreated事件中,而不是在ItemDataBound事件中。
9.DataList控件
如何使用Datalist控件?
参照:
10.Repeater控件
11.如何使用DataGrid、DataList、Repeater的讨论、比较
WEB开发自从有了基于脚本的WEB编程技术(如ASP)以来,经历了一个漫长的过程。
通过使用微软的ASP.Net技术,传统的ASP中大量的、单调乏味的、重复性的编程工作成为了历史。
例如,象大多数ASP程序员所知的,在ASP中显示数据库内容所需要的过程:
建立数据库连接
用SQL查询装载ADO数据集
显示所需要的任何HTML代码
遍历数据集中的记录
输出记录字段值及相关的HTML
移向下一条记录
循环
显示所需要的HTML代码
又如,为了在表格中显示记录集的内容,我们需要输出一个
标签,然后开始循环。在循环中,每输出一条记录,需要先输出一个
标签以及若干对标签和 |
标签。最后,以一个
标签结尾。