0

既存の子ノードの編集に問題があります。それが可能かどうかはわかりませんが、そうであることを願っています。私はほとんどすべてを試しました。これは、最初の子ノードのテキストを取得するために使用するコードの一部です

int x;

void ReadX()
{
String ^ strFilename = L"test.xml";
XmlDocument ^ testxml = gcnew XmlDocument;

if (File::Exists(strFilename))
{
testxml->Load(strFilename);
XmlElement ^ elm = testxml->DocumentElement;
XmlNodeList ^ lstVideos = elm->ChildNodes;
//MessageBox::Show(elm->Name);
//MessageBox::Show(elm->InnerText);
x = Convert::ToInt32(lstVideos[0]->InnerText);
}

そしてボタンクリックで

textBox1->Text=System::Convert::ToString(x);

私がやりたいのは、button2 クリックで textBox1 から lstVideos[0]->InnerText に値を入力することです。私は msdn にリンクしないでください。X1 のテキストを編集するには、xml についてまだ多くのことを学ぶ必要があります。上記のコードは X1 のテキストを読み取ります。childnode を名前で読む方がおそらく簡単でしょうが、その方法はまだわかりません。

これは私のxmlファイルです

<?xml version="1.0" encoding="utf-8"?>
<Coords>
 <X1>10010</X1>
 <X2>200</X2>
 <X3>300</X3>
 <X4>400</X4>
 <X5>500</X5>
</Coords>
4

1 に答える 1

0

InnerText は String^ であり、textBox1->Text は String^ であるため、次の理由はありません。

lstVideos[0]->InnerText = textBox1->Text

また、どちらも文字列であるため、InnerText を int に変換してから最初に戻す必要はありません。

于 2013-02-25T21:18:33.430 に答える