我想知道是否有可能代替我在XAML中复制代码段来定义可以链接的内容。具体来说,我所拥有的是:
<Grid>
// Definitions
<Label Content="Name:" />
<Label Content="Age:" Grid.Column="1"/>
...
<Grid>
现在我想要类似
<Content_in_grid=nice_labels>
的东西,它应该简单地复制这些标签。注意:我不需要网格,因为这些是我想使用不同属性绑定的一些标签。
PS:也许是另一个角度,想象一下我想用WPF创建文件属性比较程序。因此,您可以想象我必须再次复制所有这些标签,例如Filename,Date等静态标签,但是出于可维护性考虑,如果我想将Filename更改为File,那么我将不得不搜索并替换而不是一次编辑它。地点。
提前致谢。
最佳答案
将其添加到资源中:
<Window.Resources>
<DataTemplate x:Key="MyGrid">
<Grid>
<Label Content="Name:" />
<Label Content="Age:" Grid.Column="1" />
</Grid>
</DataTemplate>
</Window.Resources>
然后在需要的地方使用它:
<StackPanel>
<ContentPresenter ContentTemplate="{StaticResource MyGrid}" />
<ContentPresenter ContentTemplate="{StaticResource MyGrid}" />
<ContentPresenter ContentTemplate="{StaticResource MyGrid}" />
</StackPanel>
关于c# - 如何在WPF中重用XAML标签?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27188734/