簡體   English   中英

在Textbox C#中顯示從組合框選擇的XML數據

[英]Displaying XML data selected from Combobox in Textbox C#

您好,我正在學習C#,並試圖在組合框中選擇它之后,以相同的形式在Text1的文本框中顯示User1.xml中的xml信息。

我已經設法使用此代碼用名稱標簽填充組合框。 (以便可以選擇用戶名)

private void Form1_Load(object sender, EventArgs e)
{
   XmlDocument sFor = new XmlDocument();
   sFor.Load(Path.GetFullPath("User1.xml"));
   XmlNodeList SearchList = sFor.SelectNodes("employee/user/name");
   foreach (XmlNode Search in SearchList)
   {
      comboBox1.Items.Add(Search.InnerText);
   }

}

這樣就格式化了XML

<employee>
    <user>
    <name>John Smith</name>
    <department>PAI</department>
    <manager>MD</manager>
    <hours>full-time</hours>
    <leave>940</leave>
    </user>
</employee>

在組合框中選擇后,我將如何(使用linq或xmlreader或其他方式)在textBox2中顯示信息?

謝謝。

如果這可以幫助您

XDocument doc = XDocument.Load(Path.GetFullPath("User1.xml"));

var rows = doc.Descendants("employee").Descendants("user").Select(el => new()
{
  department = el.Element("department").Value,
  manager = el.Element("manager").Value,
  hours = el.Element("hours").Value,
  leave = el.Element("leave").Value,
});

或從DataSet這樣

DataSet ds = new DataSet();
ds.ReadXmlSchema(new StreamReader("User1.xml"));
ds.ReadXml(new StreamReader("User1.xml"));

我對DataGridView進行了類似的操作以尋找“城市”。 輸入字段是Textbox1.Text。 我希望這不是矯kill過正。 功勞歸於Stack在這里的海報,向我展示了如何做! 我先提取了特定數據,然后將其加載到列表中。 最后,使列表成為DGV的數據源。 這可能適合組合框...是嗎?

<TaxTbl>
  <TaxSite>
    <Location>Axx</Location>
    <Address>xxx</Address>
    <City>aaa</City>
    <State> st</State>
    <Zip>xxx</Zip>
  </TaxSite>
  <TaxSite>
    <Location>Bxxx</Location>
    <Address>xxx</Address>
    <City>xxx</City>
    <State> st</State>
    <Zip>xxx</Zip>
  </TaxSite>
</TaxTbl>






 var xdoc = XDocument.Load("C:\\Users\\Harley\\desktop\\outfile.xml");



var NewDoc = new XDocument(new XElement("TaxTbl",
             from anEntry in xdoc.Element("TaxTbl").Elements("TaxSite")
             where anEntry.Element("City").Value.Contains(textBox1.Text)
             select anEntry));



var MyList =
                    (from bEntry in NewDoc.Descendants("TaxSite")
                     select new
                     {
                         Location = bEntry.Element("Location").Value,
                         Address = bEntry.Element("Address").Value,
                         City = bEntry.Element("City").Value,
                         State = bEntry.Element("State").Value,
                         Zip = bEntry.Element("Zip").Value
                     }).ToList();


 cityDGV.DataSource = MyList.ToList();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM