c# - 将 XML 绑定(bind)到组合框

标签 c# linq

尝试将 XML 绑定(bind)到 Combobox 数据源时,出现错误“Complex DataBinding accepts as a data source either an IList or an IListSource.

 XDocument obj = XDocument.Load("Managers.xml");

 comboBox1.DisplayMember = "ManagerDesig";
 comboBox1.ValueMember = "ManagerID";
 comboBox1.DataSource = obj.Descendants("manager").Select(x => new
 {
   ManagerDesig = x.Attribute("desig").Value,
   ManagerID = x.Attribute("id").Value
 });

经理.xml

<managers>
  <manager id="123" desig="CEO" />
  <manager id="234" desig="CFO" />
  <manager id="456" desig="CIO" />
</managers>

请帮忙

最佳答案

尝试:

 comboBox1.DataSource = obj.Descendants("manager").Select(x => new
 {
   ManagerDesig = x.Attribute("name").Value,
   ManagerID = x.Attribute("id").Value
 })
.ToList();//convert to list

关于c# - 将 XML 绑定(bind)到组合框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4721436/

相关文章:

c# - 单元测试 - session 对象?

c# - C#中的递归和返回日期

c# - 针对多个属性构建动态 where 子句

c# - 为什么我的更新无法持续?

c# - 如果没有发生任何更改,linq 查询是否会重新执行?

c# - 如何反转括号?

c# - 串口未授权访问异常

c# - 相交和任何或包含和任何。找到至少一个公共(public)元素哪个更有效?

c# - Linq no-noes - 捕获所有类似 sql 的选择?

xml - 如何获取 <?来自 xml 的标签与 vb.net