DropDownList动态帮定

本文介绍了一种在ASP.NET中使用C#代码实现DropDownList控件数据绑定的方法。通过创建数据源并设置TextField和ValueField属性,可以轻松地为DropDownList填充选项。此外,还展示了如何在DataList的ItemDataBound事件中重复使用此方法。
private void DdlToBander()
    {
        DropDownList1.DataSource 
= CreateDataSource();
        DropDownList1.DataTextField 
= "TextField";
        DropDownList1.DataValueField 
= "ValueField";
        DropDownList1.DataBind();       
    }ICollection CreateDataSource()
    {
        DataTable dt 
= new DataTable();
        dt.Columns.Add(
new DataColumn("TextField"typeof(String)));
        dt.Columns.Add(
new DataColumn("ValueField"typeof(String)));
        DataSet ds
=ZwxData.DataSet(db.S_Art_Channle(),0,0,"list");//读取数据,这里我写了个类
        DataTable dts=ds.Tables["list"];
        
for (int i = 0; i < dts.Rows.Count;i++ )
        {
            dt.Rows.Add(CreateRow(dts.Rows[i][
2].ToString(), dts.Rows[i][0].ToString(), dt));
        }
       
        DataView dv 
= new DataView(dt);
        
return dv;
    }
    DataRow CreateRow(String Text, String Value, DataTable dt)
    {
        DataRow dr 
= dt.NewRow();
        dr[
0= Text;
        dr[
1= Value;
        
return dr;
    }

 这个方法还可以用这其他的方面,用途很广。

比如:

在DATALIST中绑定DropDownList

protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
    {
        DropDownList drop1 
= (DropDownList)e.Item.FindControl("TChname");
        
if(drop1!=null)
        {
            drop1.DataSource 
= ChnameDataSource();
            drop1.DataValueField 
= "ValueField";
            drop1.DataTextField 
= "TextField";
            drop1.DataBind();
        }       
    }

    ICollection ChnameDataSource()
    {
        DataTable dt 
= new DataTable();
        dt.Columns.Add(
new DataColumn("TextField"typeof(String)));
        dt.Columns.Add(
new DataColumn("ValueField"typeof(String)));
        DataSet ds 
= ZwxData.DataSet(db.S_Art_Channle(), 00"list");
        DataTable dts 
= ds.Tables["list"];
        
for (int i = 0; i < dts.Rows.Count; i++)
        {
            dt.Rows.Add(CreateRow(dts.Rows[i][
2].ToString(), dts.Rows[i][0].ToString(), dt));
        }
        DataView dv 
= new DataView(dt);
        
return dv;
    }

    DataRow CreateRow(String Text, String Value, DataTable dt)
    {
        DataRow dr 
= dt.NewRow();
        dr[
0= Text;
        dr[
1= Value;
        
return dr;
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值