gpt4 book ai didi

c# - 如何将 Application.Resources 移动到外部程序集?

转载 作者:行者123 更新时间:2023-11-30 20:41:27 24 4
gpt4 key购买 nike

假设我有包含以下内容的 App.xaml:

[...]
<Application.Resources>
<Style TargetType="{x:Type CheckBox}">
<Setter Property="BorderBrush" Value="{StaticResource Theme.CheckBox.Border}" />
<Setter Property="Foreground" Value="{StaticResource Theme.Foreground}" />
</Style>
</Application.Resources>
[...]

现在,我想将这些定义移至外部程序集。这样我就可以在我的应用程序中重复使用 WPF 控件和窗口样式。例如,我可以创建 NuGet 包并在几秒钟内安装这些样式。

最佳答案

您可以创建一个简单的 classLibrary项目,在单独的资源字典(推荐)中定义所有样式和模板等,并将所有这些字典合并到一个字典中。

要使用该特定程序集中的那些样式,只需在您的 App.Xaml 文件中引用它,

下面的照片应该给你一个全局 View

enter image description here

我习惯单独创建ResourceDictionary对于每个 style (为了方便访问),所有这些资源字典都合并到 ResourceLibrary.Xaml

enter image description here

现在要引用那个 ControlLibraryAssembly(在添加对它的引用之后),在您的 app.xaml 文件中添加

 <Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/ControlLibrary;component/ResourcesDictionaries/ResourceLibrary.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>

关于c# - 如何将 Application.Resources 移动到外部程序集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32371414/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com