WPF之资源规划
迪丽瓦拉
2025-06-01 14:08:30
0

总目录


文章目录

  • 总目录
  • 前言
  • 一、总的原则
  • 二、具体技巧
    • 1、提取共同的属性到样式中
    • 2、制定项目的基本样式
      • 1.窗体样式
      • 2.基本字体,色调
      • 4.基本控件效果命名&样式命名
  • 结语


前言

本文主要介绍WPF资源的规划,通过规划如何使得我们的样式可以有高效的复用,以及在应对需求的改动(如换主题,或整体字体,颜色切换)的时候我们可以做到代码改动最小化。


一、总的原则

资源规划总的原则就是:

  • 代码,资源最大化的复用
  • 代码可以做到以最小化的改动应对最大化的需求改动

二、具体技巧

1、提取共同的属性到样式中

当我们实现如下效果时:
在这里插入图片描述
原始代码如下:

        

提取到样式中

        

上面案例中,只是将样式提取到StackPanel的Resources中,只是为了直观展示,正常都会提取到资源字典中,届时代码将会有极大的优化。

  • 一来,我们将样式与界面上的控件进行了隔离,方便统一改动调整
  • 二来,简化界面,让我们的界面代码框架更清晰

2、制定项目的基本样式

制定项目的基本样式实际操作就是在项目中创建一个BaseStyle资源文件,然后合并到App.xaml中,合并操作如下:

    

项目的基本样式如下文所罗列

1.窗体样式

我们平常做项目的时候,通常会需要做无边框透明的窗体,
如下代码所示:



这个时候如果窗体很多,每个窗体都要设置不免有些麻烦,此时我们可以如下:

  • 先在基本样式的资源文件中,定义窗体样式
        
  • 引用,后续只需在需要的窗体引用该样式即可
StaticResource CommonWindowStyle}"Title="MainWindow" Height="450" Width="800">

2.基本字体,色调

通过定义基本的字体和色调,我们可以做到快捷的统一调整界面样式,并且做出来的界面更规整

  pack://application:,,,/MvvmDemo;component/Res/Fonts/#iconfontMicrosoft YaHei14288

4.基本控件效果命名&样式命名

对于样式的命名可以参考系统模板上的命名,如:

   	

通过【控件.事件.属性】 这样的方式命名,会更直观的知道该属性样式的作用

另外我们对一些TextBox 和 Button 的基本MouseOver 和 Pressed的事件效果定义基本的样式,这个具体项目具体分析,如果项目中的输入框和按钮的样式基本相同,就可以统一定义,如果样式较为分散,则不适合

未完待续


结语

以上就是本文的内容,希望以上内容可以帮助到您,如文中有不对之处,还请批评指正。

相关内容