0

如何使用 XML 文档提供的属性创建 Windows 窗体?

这是这样一个 XML 文档:

<Form>
   <Size>
     <Width>558</Width> 
     <Height>537</Height> 
   </Size>
   <Text>XML saving</Text> 
   <Name>Form1</Name> 
   <Button>
     <Name>button1</Name> 
     <Text>XML button</Text> 
     <Size>
       <Width>130</Width> 
       <Width>45</Width> 
     </Size>
     <Location>
       <X>14</X> 
       <Y>24</Y> 
     </Location>
   </Button>
 </Form>

加载表单后,我需要使用 XML 文档中的值显示表单及其上的按钮。

任何人都可以提供有关此主题的任何帮助或教程吗?

4

1 回答 1

4

您可以使用内置功能来保存和恢复表单设置。使用应用程序设置绑定

您可以将表单的大小、位置、文本等属性及其控件绑定到设置,这些设置将自动加载并应用于控件。脚步:

  • 选择一些控件并转到属性选项卡
  • (ApplicationSettings)在数据类别下查找属性
  • 打开属性绑定编辑器
  • 选择要从 xml 保存和加载的属性并为该属性创建新设置

如果你真的需要使用你的xml,那么你应该手动解析它。您可以创建一些(扩展)方法,例如(Linq to Xml 示例):

public static void ApplySettings(this Button button, XDocument xdoc)
{
    var settings = xdoc
                 .Descendatns("Button")
                 .SingleOrDefault(b => (string)b.Element("Name") == button.Name);

    if (settings == null)
       return;

    button.Text = (string)settings.Element("Text");
    var location = settings.Element("Location");
    if (location != null)
    {
        button.X = (int)location.Element("X");
        button.Y = (int)location.Element("Y");
    }

    //etc
}

并为每个控件调用这些方法:

var xdoc = XDocument.Load(settings_file);
button1.ApplySettings(xdoc);
// etc
于 2013-01-03T14:58:32.813 回答