如何重用Xaml代码模板?
假设我有这个XAML:如何重用Xaml代码模板?,xaml,winrt-xaml,controltemplate,Xaml,Winrt Xaml,Controltemplate,假设我有这个XAML: <StackPanel> <TextBlock Text="{Binding Path=TaskName}" /> <TextBlock Text="{Binding Path=Description}"/> <TextBlock Text="{Binding Path=Priority}"/> </StackPanel> 我想在多个地方重复使用它。 例如,作为ItemsCo
<StackPanel>
<TextBlock Text="{Binding Path=TaskName}" />
<TextBlock Text="{Binding Path=Description}"/>
<TextBlock Text="{Binding Path=Priority}"/>
</StackPanel>
我想在多个地方重复使用它。
例如,作为ItemsControl的DataTemplate,也可以作为buttons内容等内容的基础
我该怎么做呢?
我在想ASP.NET局部视图之类的东西
我不想使用usercontrol,因为我不需要任何代码。创建一个StylesResourceDictionary.xaml并在App.xaml中创建一个staticresource。在运行时,样式将被绑定,然后您可以在应用程序中的任何位置,跨用户控件或数据模板等引用字典中的任何内容。我使用一种样式使其工作:
<Style x:Key="myStyle" TargetType="Control">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<StackPanel>
<TextBlock Text="{Binding Path=TaskName}" />
<TextBlock Text="{Binding Path=Description}"/>
<TextBlock Text="{Binding Path=Priority}"/>
</StackPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
它坚持要我使用TargetType,否则它会抱怨设置模板。
我现在可以在任何控件上使用它
如果我想将其用作datatemplate,我可以在datatemplate(可能是ContentControl)中设置占位符项的样式来使用它。使用样式管理它。我将创建一个新的答案来完整解释。