0
今日、C#でXMLファイルを使用して作業を開始しましたが、実際にこの作業を行う方法はわかりません。ListBoxで表示します.Text XMLファイルの内容
私はこのXML持っている:
<Units>
<Unit>
<UNIT_NAME>First</UNIT_NAME>
<SRC>
<SRC_NAME>a</SRC_NAME>
<SUB_SRC_NAME>
<SUB_SRC_NAME_A>i_first_srt_alfa</SUB_SRC_NAME_A>
<SUB_SRC_NAME_A>i_first_srt_beta</SUB_SRC_NAME_A>
</SUB_SRC_NAME>
<SRC_NAME>b</SRC_NAME>
<SUB_SRC_NAME>
<SUB_SRC_NAME_A>alfa</SUB_SRC_NAME_A>
<SUB_SRC_NAME_A>beta</SUB_SRC_NAME_A>
</SUB_SRC_NAME>
</SRC>
<DOC>
<DOC_NAME>i_first_doc</DOC_NAME>
<SUB_DOC_NAME>
<SUB_DOC_NAME_A>alfa</SUB_DOC_NAME_A>
<SUB_DOC_NAME_A>beta</SUB_DOC_NAME_A>
</SUB_DOC_NAME>
</DOC>
<TST>
<TST_NAME>i_first_tst</TST_NAME>
<SUB_TST_NAME>
<SUB_TST_NAME_A>alfa</SUB_TST_NAME_A>
<SUB_TST_NAME_A>beta</SUB_TST_NAME_A>
</SUB_TST_NAME>
</TST>
</Unit>
<Unit>
<UNIT_NAME>Second</UNIT_NAME>
<SRC>
<SRC_NAME>c</SRC_NAME>
<SUB_SRC_NAME>
<SUB_SRC_NAME_A>alfa</SUB_SRC_NAME_A>
<SUB_SRC_NAME_A>beta</SUB_SRC_NAME_A>
</SUB_SRC_NAME>
<SRC_NAME>d</SRC_NAME>
<SUB_SRC_NAME>
<SUB_SRC_NAME_A>alfa</SUB_SRC_NAME_A>
<SUB_SRC_NAME_A>beta</SUB_SRC_NAME_A>
</SUB_SRC_NAME>
</SRC>
<DOC>
<DOC_NAME>i_first_doc</DOC_NAME>
<SUB_DOC_NAME>
<SUB_DOC_NAME_A>i_first_doc_alfa</SUB_DOC_NAME_A>
<SUB_DOC_NAME_A>i_first_doc_beta</SUB_DOC_NAME_A>
</SUB_DOC_NAME>
</DOC>
<TST>
<TST_NAME>i_first_tst</TST_NAME>
<SUB_TST_NAME>
<SUB_TST_NAME_A>i_first_tst_alfa</SUB_TST_NAME_A>
<SUB_TST_NAME_A>i_first_tst_beta</SUB_TST_NAME_A>
</SUB_TST_NAME>
</TST>
</Unit>
</Units>
をそして、私は次の形式でリストボックスに表示する:
First
First -- a
First -- b
Second
Second -- c
Second -- d
これは私の現在のコードです:
XmlNodeList xnUnitList = xml.SelectNodes("/Units/Unit");
foreach (XmlNode xn in xnUnitList)
{
string UNIT_NAME = xn["UNIT_NAME"].InnerText;
listBox1.Items.Add(UNIT_NAME);
XmlNodeList SRC =xn.SelectNodes("/Units/Unit/SRC");
foreach (XmlNode node in SRC)
{
string SRC_NAME = node["SRC_NAME"].InnerText;
listBox1.Items.Add(UNIT_NAME+"--" +SRC_NAME);
}
}
しかし、結果はこのように表示されます
First
First -- a
First -- c
Second
Second -- a
Second -- c
なぜa
とc
が再び表示され、なぜとd
が欠落していますか?
おかげでたくさん!それは働いている! –