>我有 XAML 字符串,如下所示:
<Button Content={Binding Name} Style={StaticResource ButtonStyle}/>
我如何在代码中将所有大括号转换为元素,例如:
<Button>
<Button.Content>
<Binding Path="Name">
</Button.Content>
<Button.Style>
<StaticResource ResourceKey="ButtonStyle"/>
</Button.Style>
</Button>
您可以使用我认为(!)默认不会保存速记变体的XamlReader
和XamlWriter
。请参阅 http://msdn.microsoft.com/en-us/library/system.windows.markup.xamlreader(v=vs.110).aspx
其中包括一个示例
// Create the Button.
Button originalButton = new Button();
originalButton.Height = 50;
originalButton.Width = 100;
originalButton.Background = Brushes.AliceBlue;
originalButton.Content = "Click Me";
// Save the Button to a string.
string savedButton = XamlWriter.Save(originalButton);
// Load the button
StringReader stringReader = new StringReader(savedButton);
XmlReader xmlReader = XmlReader.Create(stringReader);
Button readerLoadButton = (Button)XamlReader.Load(xmlReader);
上面保存的按钮看起来像
<Button Background="#FFF0F8FF" Width="100" Height="50" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">Click Me</Button>