软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
作者:csframework|C/S框架网  发布日期:2022/02/17 12:35:38

软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架

软件界面图片提供者策略 - MiniFramework蝇量框架 - Winform框架

一、前言

MiniFramework蝇量框架支持软件界面换肤功能,包括界面样式和图片,支持以下两种换肤方式:

  • DevExpress 皮肤
  • 软件界面的图片替换

DevExpress 皮肤

在主窗体的Toolbar上,添加一个 SkinRibbonGallery 组件,可以切换DevExpress 17种常用皮肤。

软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架

DevExpress 17种常用皮肤

软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架

在SkinRibbonGallery组件的GalleryItemClick事件内实现所有软件界面全局换皮肤功能,参考代码:

C# 全选
 private void skinRibbonGallery_GalleryItemClick(object sender, GalleryItemClickEventArgs e)
        {
            string skin = e.Item.Tag.ToString();

            //所有软件界面全局换皮肤功能
            this.SetSkin(skin);

            //保存DevExpress皮肤名称
            UserConfig.Current.SkinName = skin;
            UserConfig.Save();
        }

软件界面的图片替换

当用户购买MiniFramework 蝇量框架软件产品,要开发属于自己的软件产品,因此需要替换掉 MiniFramework 相关所有图片、图标等内容,以及针对VS解决方案改名。

VS解决方案改名工具:

http://www.csframework.com/archive/1/arc-1-20180527-2397.htm

二、UIProvider - 软件界面图片提供者

通过图片提供者策略,即可实现一套软件支持不同的客户使用,不需要修改程序代码,比如替换图片、图标、公司名称、程序名称等信息。

UIProvider 图片提供者与 IUIProvider 策略接口的逻辑关系

软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架

三、IUIProvider接口

软件界面图片、图标替换策略接口(IUIProvider接口)。

C# 全选
/// <summary>
    /// 软件界面图片提供者接口
    /// </summary>
    public interface IUIProvider
    {
        /// <summary>
        /// 程序Logo图标
        /// </summary>
        Icon Logo { get; }

        /// <summary>
        /// 登录界面的背景图片
        /// </summary>
        Image LoginBackgroundImage { get; }

        /// <summary>
        /// 关于我们左侧的背景图片
        /// </summary>
        Image AboutFormLeftImage { get; }

        /// <summary>
        /// 技术支持二维码(作者二维码)
        /// </summary>
        Image BarcodeImage { get; }

        /// <summary>
        /// 主窗体工具条右侧的背景图片(大图)
        /// </summary>
        Image MainFormToolbarImageLarge { get; }

        /// <summary>
        /// 主窗体工具条右侧的背景图片(小图)
        /// </summary>
        Image MainFormToolbarImageSmall { get; }

        /// <summary>
        /// HOME首页的Banner背景图
        /// </summary>
        Image HomeBackgroundImage { get; }

        /// <summary>
        /// 程序名称
        /// </summary>
        string ProgramName { get; }

        /// <summary>
        /// 程序版本号
        /// </summary>
        string Version { get; }

    }

四、MiniFrameworkUI 类 - 蝇量框架默认图片提供者

蝇量框架默认图片提供者。

C# 全选
    /// <summary>
    /// MiniFramework 蝇量框架默认图片提供者
    /// </summary>
    public class MiniFrameworkUI : UIProviderBase
    {
        public MiniFrameworkUI() { bulk = @"images\default\"; }

        public override string ProgramName { get { return Globals.DEF_NAME; } }
        public override string Version { get { return Globals.DEF_VERSION; } }

    }

五、QifanUI 类 - 客户案例

客户案例:起帆物流TMS系统界面图片提供者。

C# 全选
    /// <summary>
    /// 起帆物流界面图片提供者
    /// </summary>
    public class QifanUI : UIProviderBase
    {
        public QifanUI() { bulk = @"images\qifan\"; }

        public override string ProgramName { get { return Globals.DEF_NAME1; } }
        public override string Version { get { return Globals.DEF_VERSION1; } }
    }

六、初始化界面图片提供者

在 Program.cs 内初始化图片提供者:

C# 全选
//初始化界面图片提供者
UIProvider.Current = UIProvider.GetProvider(UserConfig.Current.UIProviderName);

七、UIProviderName - 图片提供者名称

CSFramework.Mini.Library.MiniFrameworkUI

蝇量框架默认图片策略。

CSFramework.Mini.Library.QifanUI

客户案例 - 起帆物流TMS系统图片提供者。

八、图片目录

图片提供者策略对应的图片目录,在 \Debug\images\ 根目录下。

软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架

default蝇量框架的图片目录。

qifan客户案例:起帆物流TMS系统的图片目录。

\CSFramework.MiniFramework\source\Debug\images\default

软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架

\CSFramework.MiniFramework\source\Debug\images\qifan

软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架

九、效果展示

登录界面

软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架

软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架

主界面(HOME首页)

软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架

软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架

关于我们

软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架

软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架

C/S框架网|原创精神.创造价值.打造精品


扫一扫加作者微信
C/S框架网作者微信 C/S框架网|原创作品.质量保障.竭诚为您服务
上一篇 下一篇