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;
}
{
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(), 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;
}
{
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(), 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;
}
本文介绍了一种在ASP.NET中使用C#代码实现DropDownList控件数据绑定的方法。通过创建数据源并设置TextField和ValueField属性,可以轻松地为DropDownList填充选项。此外,还展示了如何在DataList的ItemDataBound事件中重复使用此方法。

1949

被折叠的 条评论
为什么被折叠?



