Wpf 如何将一些XAML片段作为子元素插入到窗口中?
我有一些像这样的XAML(作为字符串):Wpf 如何将一些XAML片段作为子元素插入到窗口中?,wpf,xaml,code-snippets,Wpf,Xaml,Code Snippets,我有一些像这样的XAML(作为字符串): <Grid> <TextBlock>some text</TextBlock> </Grid> 一些文本 我想将其插入我的窗口,而不在代码隐藏中生成它: <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.micro
<Grid>
<TextBlock>some text</TextBlock>
</Grid>
一些文本
我想将其插入我的窗口,而不在代码隐藏中生成它:
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="BookOnTheFly.MainWindow"
Title="MainWindow" Height="350" Width="525">
<Grid>
<insert xaml snippet here>
</Grid>
</window>
我的意思是类似jQuery append的东西。在代码中,您可以将元素添加到网格的
子元素中。像这样的
XAML:
注意:
如果要添加的对象已经是另一个元素的子元素,则会出现异常。在将其添加到新元素之前,必须先将其从该元素中删除
oldContainer.Children.Remove(toBeInserted);
希望这有帮助 你想要的是资源。资源是一段XAML代码,它符合资源字典中的某些要求。可以在应用程序、窗口或任何框架元素上定义资源。一旦定义,它可以以各种方式引用
看
编辑:
将所需的XAML代码放入资源目录:
<DataTemplate x:Key="insertion">
<!-- XAML here -->
</DataTemplate>
并将其用作内容控制中的数据:
<ContentControl ContentTemplate="{StaticResource insertion}"/>
谢谢,但我指的是字符串。
<DataTemplate x:Key="insertion">
<!-- XAML here -->
</DataTemplate>
<ContentControl ContentTemplate="{StaticResource insertion}"/>