winform / Dev全局皮肤组件

话不多说先上效果图。

由于这是单独的测试项目, 用于演示Dev控件的皮肤样式, 所以上面只是演示了部分控件的效果。

下面则是一些实际项目中的截图:

Dev的控件样式不仅美观丰富, 上面仅皮肤设置就有40多种, 针对各种用户的界面设计。

那么下面,我就讲一下dev皮肤的几个核心代码原理和实现。

  1.原理

1. 添加引用Dev的皮肤控件DLL,有两个部分组成, 40多种组合

2.通过已经构造好的类去注册连个皮肤

将所有的皮肤加载到下拉列表当中

3.设置皮肤的样式

4.保存到用户配置至本地文件

定义实现加载皮肤和改变皮肤的接口Ifrmskinbase, Skintool和SystemConifg则分别用于设置皮肤和保存本地配置

时间: 2024-11-04 21:33:04

winform / Dev全局皮肤组件的相关文章

Winform 自定义窗体皮肤组件

分享一个很久之前写的一个Winform换肤组件. 主要利用CBT钩子,NativeWindow来实现.可实现动态换皮肤插件修改窗体显示外观. 我们先定义一个自定义组件 using Skin; using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Linq; using System.Reflection; using Syste

WinForm&&DEV知识小结

-------------------------------------------------------------------------------- 1.父窗体Form1中调用子窗体Form2代码: Form2 fr = new Form2(); this.hide(); fr.ShowDialog(this); 2.子窗体的FormClosed事件代码: private void Form2_FormClosed(object sender, FormClosedEventArgs

Delphi 仿QQ皮肤组件设计与运行效果图

设计时效果:NO1 运行时效果:NO1 设计时效果:NO2 运行时效果:NO2 Delphi 仿QQ皮肤组件设计与运行效果图

winform接收全局的快捷键

public class NativeWIN32 { public NativeWIN32() { } /* ------- using WIN32 Windows API in a C# application ------- */ [DllImport("user32.dll", CharSet = CharSet.Auto)] static public extern IntPtr GetForegroundWindow(); // [StructLayout(LayoutKin

Vue 全局注册组件和局部注册组件

Vue 组件化的思想大大提高了模块的复用性和开发的效率,在使用组件时,一般分为几个步骤,分别是:定义组件.引入组件,注册组件,使用组件.本节主要针对Vue中如何注册组件进行阐述. 下面我们一起来看如何全局注册组件,如何局部注册组件. 页面显示结果如下: [说明]: 1. com-one  com-two 为全局注册组件, com-three  com-four 为局部注册组件: 2. 全局注册组件为 Vue.component()方法:局部注册组件为 components 属性,它的属性值是一个

Dev的皮肤功能

目前我所用到的就两种方式: 方法一:用dev提供的封装,引用dll,然后在控件初始化时注册就ok,且选择丰富.如下图所示: 步骤:1,引用相应dll,如上图箭头所示. 2,在ribbon中添加一个ribbonGalleryBarItem1控件. 3,在初始化代码注册,上图2已框出. 方法二:就是使用皮肤控件defaultLookAndFeel,然后操作相应属性. 这种方式比较单一,不够灵活.

[Winform]Media Player com组件应用中遇到的问题

摘要 最近一个项目中,需要用到在客户端全屏循环播放视频,当时考虑使用开源的播放器,但控制起来不方便,然后考虑既然都是windows系统,那么可以考虑使用微软自带的Media Player播放器.所以在开发中,就在winform中嵌入了Media Player组件.下面就将开发中遇到的问题,做一个总结. 问题与解决办法 首先要搞清楚Media Player到底是x86的还是x86的.我电脑系统是x64的,可以尝试打开Media Player,在任务管理器中查看是不是x64的. 所以media pl

WinForm程序全局捕捉异常处理办法

如何全局捕捉Winform程序异常呢,当然是从程序启动入口的Program类下的Main()方法定义了,下面看下这个类怎么写的吧 static class Program { static string RunFormFullName { get { string setRunFormFullName = CIPACE.Sys.Configuration.RunFormFullName; if (setRunFormFullName == null) setRunFormFullName = D

component 全局局部组件

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>template模版</title> <meta name="flexible" content="initial-dpr=2,maximum-dpr=3" /> <meta name="a