XAML:重构数据模板
本文关键字:数据 重构 XAML | 更新日期: 2023-09-27 18:34:40
我有一个超过 2k 行长的 XAML 文件。我想重构为可管理的部分。
在资源部分,我有一个转换器,可以将枚举转换为数据模板:
<UserControl.Resources>
<converters:SomeConverter x:Key="EnumToDataTemplateConverter">
<converters:SomeConverter.NumericBoxTemplate>
<DataTemplate>
... long template description ...
</DataTemplate>
</converters:SomeConverter.NumericBoxTemplate>
</converters:SomeConverter x:Key="EnumToDataTemplateConverter">
</UserControl.Resources>
我已经将DataTemplate重构为具有x:Key="xyDataTemplate"
的资源字典
我的问题是如何在原始位置创建它?
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="XyTemplate.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
<converters:SomeConverter x:Key="EnumToDataTemplateConverter">
<converters:SomeConverter.NumericBoxTemplate>
???
</converters:SomeConverter.NumericBoxTemplate>
</converters:SomeConverter x:Key="EnumToDataTemplateConverter">
</UserControl.Resources>
如果我们能在转换器中看到属性的声明,这将有所帮助,但现在尝试:
<converters:SomeConverter x:Key="EnumToDataTemplateConverter"
NumericBoxTemplate="{StaticResource xyDataTemplate}"/>