C#:通过数据集将XML绑定到组合框
我试图让这段代码工作大约2小时=(我是C#新手,不知道所有的.NET库类 目标是将XML数据填充到comboBoxC#:通过数据集将XML绑定到组合框,c#,xml,dataset,C#,Xml,Dataset,我试图让这段代码工作大约2小时=(我是C#新手,不知道所有的.NET库类 目标是将XML数据填充到comboBox DataSet dataSet = new DataSet(); DataTable dataTable = new DataTable("table1"); dataTable.Columns.Add("col1", typeof(string)); dataSet.Tables.Add(dataTable); StringReader strR = new StringRea
DataSet dataSet = new DataSet();
DataTable dataTable = new DataTable("table1");
dataTable.Columns.Add("col1", typeof(string));
dataSet.Tables.Add(dataTable);
StringReader strR = new StringReader("<root><parm1>val1</parm1><parm2>val2</parm2></root>");
dataSet.ReadXml(strR);
comboBox1.DataSource = dataSet.Tables[0];
comboBox1.DisplayMember = "col1";
comboBox1.ValueMember = "col1";
DataSet数据集=新数据集();
DataTable=新数据表(“表1”);
dataTable.Columns.Add(“col1”,typeof(string));
dataSet.Tables.Add(dataTable);
StringReader strR=新StringReader(“val1val2”);
ReadXml(strR);
comboBox1.DataSource=dataSet.Tables[0];
comboBox1.DisplayMember=“col1”;
comboBox1.ValueMember=“col1”;
嗯,它没有按预期工作。组合框应该显示
瓦尔1
瓦尔2
我真的不明白数据集中DataTable的列名如何与XML标记相关……也许这就是问题所在
提前感谢您!以下操作应该有效:
DataSet dataSet = new DataSet();
DataTable dataTable = new DataTable("table1");
dataTable.Columns.Add("col1", typeof(string));
dataSet.Tables.Add(dataTable);
StringReader strR = new StringReader("<root><table1><col1>val1</col1></table1><table1><col1>val2</col1></table1></root>");
dataSet.ReadXml(strR);
comboBox1.DataSource = dataSet.Tables[0];
comboBox1.DisplayMember = "col1";
comboBox1.ValueMember = "col1";
DataSet数据集=新数据集();
DataTable=新数据表(“表1”);
dataTable.Columns.Add(“col1”,typeof(string));
dataSet.Tables.Add(dataTable);
StringReader strR=新StringReader(“val1val2”);
ReadXml(strR);
comboBox1.DataSource=dataSet.Tables[0];
comboBox1.DisplayMember=“col1”;
comboBox1.ValueMember=“col1”;
表和列的名称需要在C#对象和XML数据之间保持一致。以下操作应该有效:
DataSet dataSet = new DataSet();
DataTable dataTable = new DataTable("table1");
dataTable.Columns.Add("col1", typeof(string));
dataSet.Tables.Add(dataTable);
StringReader strR = new StringReader("<root><table1><col1>val1</col1></table1><table1><col1>val2</col1></table1></root>");
dataSet.ReadXml(strR);
comboBox1.DataSource = dataSet.Tables[0];
comboBox1.DisplayMember = "col1";
comboBox1.ValueMember = "col1";
DataSet数据集=新数据集();
DataTable=新数据表(“表1”);
dataTable.Columns.Add(“col1”,typeof(string));
dataSet.Tables.Add(dataTable);
StringReader strR=新StringReader(“val1val2”);
ReadXml(strR);
comboBox1.DataSource=dataSet.Tables[0];
comboBox1.DisplayMember=“col1”;
comboBox1.ValueMember=“col1”;
表和列的名称需要在C#对象和XML数据之间保持一致。谢谢!这很有效。这很简单。表是父节点,最深的节点是列…谢谢!这很有效。这很简单。表是父节点,最深的节点是列。。。