私はXMLファイルの値を読んでちょっと固執しています。 XMLのようになります。私は何をしようとしているXMLからテキストを含むCreateNewCheckBox
<?xml version="1.0" encoding="utf-16"?>
<spfFiles>
<file>200_006 xxxxxxx</file>
<file>200_010 xxxxxxx</file>
<file>200_022 xxxxxxx</file>
<file>200_023 xxxxxxx</file>
<file>200_024 xxxxxxx</file>
<file>200_031 xxxxxxx</file>
<file>200_041 xxxxxxx</file>
</spfFiles>
は、私は、ファイルごとに新しいチェックボックスをクリートしたいということです。
XmlTextReader xReader = new XmlTextReader("spfFiles_simW.xml");
while (xReader.Read())
{
switch (xReader.NodeType)
{
case XmlNodeType.Text: //Display the text in each element.
pnlSPFLIST.Controls.Add(CreateNewCheckBox(xReader.Value));
break;
}
}
新しい要素の作成は問題ありません。しかし、私はファイル名に問題があります。各チェックボックスは、スペースの前の部分だけを名前として取得します。たとえば、「200_006」です。私のxmlReaderはどうにかして残りの部分をカットするようです。
編集:私は間違って行ってきたところ誰もがそうここ は私CreateNewCheck
あるprivate CheckBox CreateNewCheckBox(string sName)
{
label1.Text = sName;
int iExistingCheckBoxX = 0;
int iExistingCheckBoxY = 0;
int iIncrementX = 100;
int iIncrementY = 20;
CheckBox cbNew = new CheckBox();
cbNew.Width = iIncrementX;
if (pnlSPFLIST.Controls.Count == 0)
{
cbNew.Location = new Point(pnlSPFLIST.Location.X, pnlSPFLIST.Location.Y-25);
}
else
{
// Existing checkboxes, so get the Location of the last one.
iExistingCheckBoxX = pnlSPFLIST.Controls[pnlSPFLIST.Controls.Count - 1].Location.X;
iExistingCheckBoxY = pnlSPFLIST.Controls[pnlSPFLIST.Controls.Count - 1].Location.Y;
iExistingCheckBoxX = pnlSPFLIST.Location.X;
iExistingCheckBoxY = iExistingCheckBoxY + iIncrementY + 10;
cbNew.Location = new Point(iExistingCheckBoxX, iExistingCheckBoxY);
}
// Set the Text property according to the input.
cbNew.Text = sName;
return cbNew;
}
を知っていますか?
'xReader.Value'が文字列の一部を返すだけで、' CreateNewCheckBox'では何もないと確信していますか? – CodingGorilla
あなたは絶対に正しいです。 label1.Text = xReader.Value; は全体の値を返します。 – mykds
それとコードの更新を考えれば、 'Text'プロパティは単にサイズのために折り返してしまい、テキスト全体を見ることができないのでしょうか? – CodingGorilla