无法将数据绑定到下拉列表

本文关键字:下拉列表 数据绑定 | 更新日期: 2023-09-27 18:36:22

>我正在将XML值绑定到DropDownList。下面是我的代码:

protected void LoadDropdown()
{
     DataSet ds = new DataSet();
     ds.ReadXml (Server.MapPath(@"XMLFile1.xml"));
     DropDownList1.DataTextField = "country_Id";          
     DropDownList1.DataSource = ds;
     DropDownList1.DataBind();
     DropDownList1.Items.Insert(0,new ListItem(" Select ","0"));
}     

我想在下拉列表列表中获取国家/地区名称,但我得到的 id 值如 0,1,2,3。我做错了什么?

无法将数据绑定到下拉列表

尝试为 DataTextField 指定其他内容:

DropDownList1.DataTextField = "country_Name"; //This value depends on what your XML structure is.
DropDownList1.DataValueField = "country_Id";

如果你的XML看起来像这样

<?xml version="1.0" encoding="utf-8" ?>
<Items>
<Item ddlValue="1" ddlText="YourlistItem1" />
<Item ddlValue="2" ddlText="YourlistItem2" />
<Item ddlValue="3" ddlText="YourlistItem3" />
</Items>

下拉列表的代码隐藏应该是

protected void Page_Load(object sender, EventArgs e)
{
    DataSet ddlDataSource = new DataSet(); 
    ddlDataSource.ReadXml(MapPath("XmlFile.xml"));
    DropDownList1.DataSource = ddlDataSource;
    DropDownList1.DataBind();
} 

希望这有帮助。

我找到了我的问题的解决方案。

protected void LoadDropdown()
    {
        DataSet ds = new DataSet();
        ds.ReadXml(Server.MapPath(@"XMLFile1.xml"));
        DropDownList1.DataTextField = "name";
        DropDownList1.DataSource = ds;
        DropDownList1.DataBind();
        DropDownList1.Items.Insert(0, new ListItem(" Select ", "0"));
    }