如何将一些 XAML 片段作为子元素插入到我的 window 中?
How can I insert some XAML snippet in to my window as child element?
我有一些 XAML(作为字符串),如下所示:
<Grid>
<TextBlock>some text</TextBlock>
</Grid>
而且我想将它插入到我的 window 中而不在后面的代码中生成它:
<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..
在代码中,您可以将元素添加到网格的 Children
。像这样
XAML:
<Grid Name="grid">
<!-- Where your code will be inserted -->
</Grid>
<Grid Name="toBeInserted">
<TextBlock>some Text</TextBlock>
</Grid>
代码:
grid.Children.Add(toBeInserted);
注:
如果您要添加的东西已经是另一个元素的子元素,您将得到一个异常。在将其添加到新元素之前,您必须先将其从该元素中删除。
oldContainer.Children.Remove(toBeInserted);
希望对您有所帮助!
你要的是资源。资源是 XAML 代码片段,符合资源字典中的特定要求。资源可以在应用程序、window 或任何框架元素上定义。定义好后,可以通过多种方式引用。
编辑:
将我想要的 XAML 代码放入资源目录中:
<DataTemplate x:Key="insertion">
<!-- XAML here -->
</DataTemplate>
并将其用作内容控制中的数据:
<ContentControl ContentTemplate="{StaticResource insertion}"/>
我有一些 XAML(作为字符串),如下所示:
<Grid>
<TextBlock>some text</TextBlock>
</Grid>
而且我想将它插入到我的 window 中而不在后面的代码中生成它:
<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..
在代码中,您可以将元素添加到网格的 Children
。像这样
XAML:
<Grid Name="grid">
<!-- Where your code will be inserted -->
</Grid>
<Grid Name="toBeInserted">
<TextBlock>some Text</TextBlock>
</Grid>
代码:
grid.Children.Add(toBeInserted);
注: 如果您要添加的东西已经是另一个元素的子元素,您将得到一个异常。在将其添加到新元素之前,您必须先将其从该元素中删除。
oldContainer.Children.Remove(toBeInserted);
希望对您有所帮助!
你要的是资源。资源是 XAML 代码片段,符合资源字典中的特定要求。资源可以在应用程序、window 或任何框架元素上定义。定义好后,可以通过多种方式引用。
编辑:
将我想要的 XAML 代码放入资源目录中:
<DataTemplate x:Key="insertion">
<!-- XAML here -->
</DataTemplate>
并将其用作内容控制中的数据:
<ContentControl ContentTemplate="{StaticResource insertion}"/>