非wpf应用程序项目【类库、用户控件库】中使用HandyControl

文章速览

坚持记录实属不易,希望友善多金的码友能够随手点一个赞。
共同创建氛围更加良好的开发者社区!
谢谢~

前言

wpf应用程序中,在入口项目中存在App.xaml文件,在这个文件中加上对各个项目的引用,因此设计器可获取当前项目引用的XAML资源字典。

由于非应用程序项目中没有App.xaml.cs文件,因此在对单个XAML文件开发时无法使用资源文件;

若是对每个XAML控件都引用相同的资源,此时虽然可以运行,但重复创建的资源会对性能有影响。

原效果:

参考文章

WPF应用程序使用HandyControl可参考官网:
HandyControl官网

实现方法

1、添加HandyControl包;

首先需要在NuGet包管理器中添加HandyControl包;

2、添加资源字典

在Properties目录下添加DesignTimeResources

3、修改资源字典内容

将其中内容替换为官网中于App.xaml添加的内容

复制代码
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="pack://application:,,,/HandyControl;component/Themes/SkinDefault.xaml" />
        <ResourceDictionary Source="pack://application:,,,/HandyControl;component/Themes/Theme.xaml" />
    </ResourceDictionary.MergedDictionaries>
</ResourceDictionary>

重新生成一下项目即可。

效果:

相关推荐
神仙别闹6 分钟前
基于C#实现(WinForm)求解SIN(X)数值分析
c#
吴可可1236 小时前
样条曲线转多段线技巧
算法·c#
影寂ldy7 小时前
C#多维数组
开发语言·算法·c#
淡海水8 小时前
01-认知篇-总览-HybridCLR是什么
unity·c#·aot·热更新·clr·hybrid
Xin_ye100869 小时前
C# 零基础到精通教程 - 第十三章:文件与流 I/O——读写文件
开发语言·c#
xiaoshuaishuai89 小时前
C# 服务注册与生命周期
开发语言·windows·c#
光泽雨9 小时前
c#中特性的定义和IEnumerable<T>
c#
公子小六9 小时前
基于.NET的Windows窗体编程之WinForms打印
windows·microsoft·c#·.net·winforms
HonestGoat12 小时前
C#之常用的数据结构
c#