-1

我想dropdowndatatable
bcoz 填充 a 我已经GetCate()在 bal 中有一个方法,它返回datatable并且现在想ddl用一些datasourcedatabind脚本动态地将数据填充到 a 中,这可能吗?

为什么不能将数据表分配到下拉列表中???

public void BindCateDDL()
{

    DataTable dt = new BALCate().GetCate();        
    ddl_filter_category_id.DataSource = dt;
    ddl_filter_category_id.DataBind();
}

这是正确的方法吗?

4

2 回答 2

2

有几种方法可以做到这一点:

1)在每次迭代中创建一个新listItem的,添加详细信息并将其添加到 DDL:

public void BindCateDDL()
{
    //DropDownList ddl;
    DataTable dt = new BALCate().GetCate();
    foreach (DataRow dr in dt.Rows)
    {
        ListItem l = new ListItem();
        l.text = dr["colForName"].ToString();
        l.value = dr["colForValue"].ToString();
        ddl.items.add(l);
    }
}

2)将数据表作为数据源添加到DropDownList并设置DataTextFieldDataValueField属性:

public void BindCateDDL()
{
    //DropDownList ddl;
    DataTable dt = new BALCate().GetCate();
    ddl.DataSource = dt;
    ddl.DataTextField = "colForName";
    ddl.DataValueField = "colForValue";
    ddl.DataBind();
}
于 2012-10-31T16:50:25.827 回答
1

您所要做的就是将下拉列表绑定到您的数据表,如下所示;

ddl.DataTextField = "ColumnName1";
ddl.DataValueField = "ColumnName2"
ddl.DataSource = dt;
ddl.DataBind()
于 2012-10-31T16:47:29.967 回答