我有一个Xml文件告诉我必须添加到表单的控件,但这个Xml动态更改,我需要更新表单.目前,我可以阅读XML文件,但我不知道是否可以根据这种情况自动创建表单?
Jea*_*aka 64
对的,这是可能的.
WPF提供了几种在Xaml或代码中创建控件的方法.
对于您的情况,如果您需要动态创建控件,则必须在代码中创建它们.您可以使用其构造函数直接创建控件,如下所示:
// Create a button.
Button myButton= new Button();
// Set properties.
myButton.Content = "Click Me!";
// Add created button to a previously created container.
myStackPanel.Children.Add(myButton);
Run Code Online (Sandbox Code Playgroud)
或者您可以将控件创建为包含xaml的字符串,并使用XamlReader解析字符串并创建所需的控件:
// Create a stringBuilder
StringBuilder sb = new StringBuilder();
// use xaml to declare a button as string containing xaml
sb.Append(@"<Button xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation'
xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml' ");
sb.Append(@"Content='Click Me!' />");
// Create a button using a XamlReader
Button myButton = (Button)XamlReader.Parse(sb.ToString());
// Add created button to previously created container.
stackPanel.Children.Add(myButton);
Run Code Online (Sandbox Code Playgroud)
现在,您想要使用的两种方法中的哪一种取决于您.
让 - 路易·