2011-07-20 25 views
4

我正在處理datagridview。其中我必須顯示列的值從xml到網格視圖列。 我有這樣的XML: - 另外我有一個網格視圖,其中有兩列「ID」和「名稱」,我想從XML填充值到網格視圖。任何人都可以幫忙嗎?任何方式來使用c填充項目從xml到Datagridview#

<employee> 
    <empdetails id="1" name="sam"/> 
    <empdetails id="2" name="robin"/> 
    <empdetails id="3" name="victor"/> 
</employee> 
+0

的WinForms,而不是WPF,我猜?如果是這樣,請添加標籤。 –

+0

你的XML沒有出來。你可以編輯你的消息並將XML放在'和'之間,或者將它縮進四個空格。 – Tim

回答

11

您可以讀取XML到DataSet和empdetails表通過DataSet中的DataGridView這樣的:

//Create xml reader 
XmlReader xmlFile = XmlReader.Create("fullPathToYourXmlFile.xml", new XmlReaderSettings()); 
DataSet dataSet = new DataSet(); 
//Read xml to dataset 
dataSet.ReadXml(xmlFile); 
//Pass empdetails table to datagridview datasource 
dataGridView.DataSource = dataSet.Tables["empdetails"]; 
//Close xml reader 
xmlFile.Close(); 
+0

謝謝:)這很好 – Karthik

3

您可以使用XML的LINQ如下

XElement xml = XElement.Load(XMl String); 
var xmlData = from item in xml.Element("empdetails")        
          select new {id = item.Attribute("id") , name= item.Attribute("name")}; 
dataGrid.DataSource = xmlData.ToList(); 
-1
C# 
    DataSet ds = new DataSet(); 
    ds.ReadXml("C:/XMLData/employee.xml"); 
    DataGridView1.DataSource = ds.Tables(0); 


VB.NET 
    Dim ds As New DataSet 
    ds.ReadXml("C:/XMLData/employee.xml") 
    DataGridView1.DataSource = ds.Tables(0)