C#の初心者として、私は次のように壁にぶつかっています。
基本的に、これの目的は、クラスに関する情報を読み取ろうとすることです-xmlでフォーマットされ、テーブル(リストボックス)に...これは発生していません。
だから、私はxmlを読み、文字列ビルダーを追加して1行ごとにリストボックスに出力しようとしています。
代わりに、同じステートメントが1713行に書き込まれます。コードは次のとおりです。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Xml;
namespace StartProgram
{
public partial class ModuleSummary : Form
{
public ModuleSummary()
{
InitializeComponent();
XmlTextReader moduleReader = new XmlTextReader("c:\\users\\w1283057\\documents\\visual studio 2010\\Projects\\StartProgram\\StartProgram\\myCourses.xml");
//to revise...
System.Text.StringBuilder moduleEntry = new System.Text.StringBuilder();
while(moduleReader.Read())
{
if ((moduleReader.NodeType == XmlNodeType.Element) && (moduleReader.Name == "moduleCode"))
{
moduleEntry.Append(moduleReader.ReadElementContentAsString() + " ");
}
if ((moduleReader.NodeType == XmlNodeType.Element) && (moduleReader.Name == "moduleTitle"))
{
moduleEntry.Append(moduleReader.ReadElementContentAsString() + " ");
}
if ((moduleReader.NodeType == XmlNodeType.Element) && (moduleReader.Name == "credits"))
{
moduleEntry.Append(moduleReader.ReadElementContentAsString()+" ");
}
if ((moduleReader.NodeType == XmlNodeType.Element) && (moduleReader.Name == "level"))
{
moduleEntry.Append(moduleReader.ReadElementContentAsString() + " ");
}
if ((moduleReader.NodeType == XmlNodeType.Element) && (moduleReader.Name == "semester"))
{
moduleEntry.Append(moduleReader.ReadElementContentAsString() + " test ");
}
moduleSummaryBox.Items.Add(moduleEntry);
}
}
private void button1_Click(object sender, EventArgs e)
{
AddModule frm = new AddModule();
frm.Show();
}
}
}