欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

.net控件dropdownlist动态绑定数据具体过程分解

程序员文章站 2024-03-01 10:24:22
一、在页面初始化时候将集合绑定到dropdownlist复制代码 代码如下: public void page_load(object src.eventargs e) {...
一、在页面初始化时候将集合绑定到dropdownlist
复制代码 代码如下:

public void page_load(object src.eventargs e)
{
arraylist arrvalue = new arraylist();
arrvalue.add("kk");
arrvalue.add("dd");
arrvalue.add("aa");
arrvalue.add("cc");
//将数组绑定到dropdownlist控件的datasource属性
ddl.datasource = arrvalue;
ddl.databind();
}

//实现
选项有:<asp:dropdownlist id="ddl" runat="server"/>

二、在页面初始化的时候向dropdownlist添加数据
复制代码 代码如下:

public void page_load(object src.eventargs e)
{
ddl.items.add(new listitem("text","value");
ddl.items.add(new listitem("text1","value1");
ddl.items.add(new listitem("text2","value2");
}

//实现
选项有:<asp:dropdownlist id="ddl" runat="server"/>

三、将datareader读取的数据动态绑定到dropdownlist
复制代码 代码如下:

protected void page_load(object sender, eventargs e)
{
if (!page.ispostback)
{
string myconnstr="provider=microsoft.jet.oledb.4.0;data source="+server.mappath(".")+"..\\database\\db.mdb";
oledbconnnection myconn=new oledbconnnection(myconnstr);
string sqlstr="select * from test";
oledbcommand mycomm = new oledbcommand(sqlstr,myconn);
mycomm.connection.open();
oledbdatareader dr=mycomm.executereader();
while (dr.read())
{
bj.items.add(new listitem(dr["bjmc"].tostring(), dr["id"].tostring()));//增加item

//或者这样也能绑定,
//dropdownlist1.items.add( new listitem( myreader[1].tostring(),myreader[0].tostring() ) );//增加item
//都是要在知道sql语句或者数据表结构的前提下才能这样绑定
}
dr.close();
}
}

四、将dataset读取的数据动态绑定到dropdownlist
复制代码 代码如下:

sqlconnection sqlconn = new sqlconnection();
sqlconn.connectionstring = "workstation id=localhost;packet size=4096;user
id=sa;data source=db1;persist security info=false;initial catalog=db";
sqlconn.open();
sqldataadapter sqldar = new sqldataadapter("select username from forums_users",sqlconn);
sqldar.selectcommand.commandtype = commandtype.text;
dataset ds= new dataset();
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_r(container.dataitem,"表字段")输出绑定数据
复制代码 代码如下:

protected void page_load(object sender, eventargs e)
{
if (!page.ispostback)
{
string myconnstr="provider=microsoft.jet.oledb.4.0;data source="+server.mappath(".")+"..\\database\\db.mdb";
oledbconnnection myconn=new oledbconnnection(myconnstr);
string sqlstr="select * from test";
oledbcommand mycomm = new oledbcommand(sqlstr,myconn);
mycomm.connection.open();
oledbdatareader dr=mycomm.executereader();
ddl.datasource = dr;
ddl.databind(); 绑定倒dd1中
}
}

在ui界面的ddl中直接调用,绑定的方法调用
复制代码 代码如下:

databinder.eval_r(container.dataitem,"表字段")