将DataTextField设置为XML中的字符串后,DropDownList重复

时间:2017-03-17 12:57:49

标签: c# asp.net xml

我正在将XML读入C#中的数据集,然后我填充了一个DropDownList,其中包含在XML中的项目中找到的ID号,如下所示:

DataSet dataSet = new DataSet();
dataSet.ReadXml(myPathToXML);

然后填充:

idDropDownList.DataSource = dataSet;
idDropDownList.DataTextField = "id";
idDropDownList.DataBind();

然而,这似乎在我DropDownList中创建了我不想要的副本。

编辑:

是否可以将下拉列表中的最后一项设置为“新ID”,当用户选择该项时,下拉列表将被TextBox替换,他/她可以在其中输入新的(唯一的) )ID?

1 个答案:

答案 0 :(得分:0)

对于问题的第一部分,
idDropDownList.Clear()

之前DataBind()

对于第二个 - 有很多选择 例如:
1.在Databind()之前向DataSet追加一行:
2.有一个隐藏的TextBox
3.处理SelectedIndexChanged事件:隐藏DropDownList并显示TextBox
4.处理TextBox的LostFocus事件,执行数据绑定并切换控件的可见性。