• WPF开源控件HandyControl——零基础教程


    学习Handycontrol的过程中,为后边快速开发,写的零基础教程,尽量看完就可以实践!

    参考教程

    中文文档:欢迎使用HandyControl | HandyOrg

    Github代码:https://github.com/HandyOrg/HandyControl

    使用教程:WPF-HandyControl安装和使用 - 掘金

    安装配置教程

    创建wpf项目

    NuGet安装handycontrol控件

    在 App.xaml配置HandyControl,一个是皮肤资源,一个是主题资源

    
            
                
                    
                    
                
            
        

    注:

    报错信息:XDG0010未能加载文件或程序集“HandyControl, Culture=neutral”或它的某一个依赖项。系统找不到指定的文件。

    解决方案:重新生成,不行切换Debug和Release的再重新生成!

    在项目中添加:

    xmlns:hc="https://handyorg.github.io/handycontrol"

    项目结构介绍

    下载Handycontrol代码后,找到Src文件夹

    Src文件下目录:

    源码结构:

    如图已将HandyControlDemo_Net_GE45作为启动项。

    运行后找到合适的Debug中程序,方便下次使用

    运行后

    左侧列表中:

    样式模板是HandyControl提供模板,在原生控件中设置使用HandyControl的模板即可使用;

    控件工具是HandyControl自定义的控件,需要引入HandyControl命名空间后声明使用。

    如何使用Handycontrol

    Handycontrol重点学习的内容主要分为三类

    1、原生控件的样式模板;

    2、拓展控件;

    3、附加属性;

    原生控件的样式模板

    简单来说,就是使用WPF自带的控件,再搭配上Handycontrol的样式资源文件

    例如:使用Handycontrol的样式模板资源LabelInfo渲染的控件

    注意:这个没有使用Windows.Resources中的自写的style哦,很方便!

    问题来了:那新手又怎么知道有哪些样式模板呢?如何使用呢?

    坦白说,样式模板有很多,只有用的多了才能会。

    对于新手总结一下常见的样式共性:【控件名+特殊后缀】,可以利用提示获取想要的样式值

    以Label和button控件为例:LabelInfo、LabelDanger、LabelPrimary、LabelSuccess、LabelWarning等

    总结:原生控件的样式特征主要为【控件名+特殊后缀】

    看一看,是不是很方便就使用了呢!

    拓展控件

    现在使用拓展的控件,也就是原生控件中没有的控件

    注意:使用拓展控件的前提是已经引用Handycontrol的命名空间,也就是在项目中添加:

    xmlns:hc="https://handyorg.github.io/handycontrol"

    例如:添加颜色拾取器(这个原生控件没有的),一行代码就行

       # hc为handycon的命名空间,colorpicker是控件名称

    或者在工具箱中直接拖拽(安装Handycontrol,工具箱会多Handycontrol拓展的控件,大概有80多个)

    总结:拓展控件丰富了实现的功能,减低了开发量

    附加的属性

    简单来说,就是给控件添加自定义了属性!例如:label的控件没有圆角,可以利用Handycontrol的附加属性设置圆角

    Handycontrol附加属性只有20几个:

    注意:以Element结尾的类,可以为所有的控件设置一些共有的属性,以Attach结尾的类,只能为一种控件设置相关的属性。

    重点—如何查询手册

    1、使用官方文档查询

    官方文档:Button 按钮 | HandyOrg

    通过原生控件中的控件查询样式模板

    2、使用官方Demo查找

    3、使用开源代码Ctrl+F查找

  • 相关阅读:
    解决:旧版本的 Boostnote 笔记无法导入到新版本 Boostnote 中
    Vue修饰符的总结归纳(Vue2和Vue3通用)
    Springboot集成springFox-Swagger3并通过Yapi做接口管理
    基于py路由器转发内容
    Ragnar-lothbrok 靶机
    【融云出海白皮书免费看】-巴西成增量潜力「应许之地」
    koa基础应用
    java通过接口转发文件(上传下载)
    基于springboot的ShardingSphere5.2.1的分库分表的解决方案之mysql主从的配置(五)
    JavaScript中的事件捕获(event capturing)和事件冒泡(event bubbling)
  • 原文地址:https://blog.csdn.net/wuhaou12345678/article/details/134219668