我是 WPF 新手,我有一个问题:
在我的项目中,我通常使用许多从我的“基本”用户控件派生的用户控件,它们有一些功能可以继承给我的所有用户控件。
使用 WPF(派生与 winform 相同)是否也可以派生 XAML?我希望创建一个带有 XML 命名空间的标头和重要的 UserControl.Resources 的 XAML。
可能吗?
提前致谢
我是 WPF 新手,我有一个问题:
在我的项目中,我通常使用许多从我的“基本”用户控件派生的用户控件,它们有一些功能可以继承给我的所有用户控件。
使用 WPF(派生与 winform 相同)是否也可以派生 XAML?我希望创建一个带有 XML 命名空间的标头和重要的 UserControl.Resources 的 XAML。
可能吗?
提前致谢
如果您希望在您的用户控件之间共享资源,请将它们放在针对您的用户控件基本类型的样式中。要在整个应用程序中访问(和应用)这些资源,请在 App.xaml 中定义它们。
您可以在基本类型的样式中定义它们:
<Style TargetType={x:Type YourBaseType}>
<Style.Resources>
<!-- define your resources here -->
</Style.Resources>
</Style>
或者,您可以将它们应用于所有 UserControls(可能是不可取的):
<Style TargetType={x:Type UserControl}>
<Style.Resources>
<!-- define your resources here -->
</Style.Resources>
</Style>
如果您希望获得视觉方面,请再次使用样式,在 App.config 定义中应用 Setter。如果需要,这些可以被特定实例“覆盖”。也看看ControlTemplate。