从XML读取字符串;无法设置checkBox.Checked

时间:2013-10-28 14:06:17

标签: c# xml

我将从我的xml文件中读取CheckBox.Value(真或假),但它不起作用。

我使用CheckBox3.Checked = reader.Value;这会产生错误

怎么了?

作家

writer.WriteStartElement("SAVED");
writer.WriteStartElement("Checkbox3");
writer.WriteString(checkBox3.Checked.ToString());
writer.WriteEndElement(); //SAVED

writer.Close();

阅读器

XmlTextReader reader = new XmlTextReader("Config.xml");
XmlNodeType type;

while (reader.Read())
{
   type = reader.NodeType;

   if (type == XmlNodeType.Element)
   {
       if (reader.Name == "WindowsHost")
       {
           reader.Read();
           textBox1.Text = reader.Value;
       }
   }
   if (type == XmlNodeType.Element)
   {
       if (reader.Name == "Checkbox3")
       {
           reader.Read();

           checkBox3.Checked = reader.Value; //error
       }
   }
}
reader.Close();

1 个答案:

答案 0 :(得分:2)

您的reader.Value类型为字符串,在将其设置为bool属性之前,您必须将其解析为Checked

checkBox3.Checked = bool.Parse(reader.Value);