WinForm - 自定义控件
2024-09-22 11:54:06
WinForm 自定义控件 --- 系统自带类型属性
引用 https://blog.csdn.net/qq_34059233/article/details/119636338
以SunnyUI为栗
前言
自定义控件的时候,需要给自定义控件类添加一系列的属性;
正文
名词解释
1)CategoryAttribute
用于给属性分类;
2)DescriptionAttribute
用于当在设计时,鼠标点击到这个属性时,提示对该属性的描述,如下:
3)也可以给属性赋初值,就像ControlColor属性的初值是红色一样
从上面可以看出,如果属性的类型是int,枚举,string ,font,color,point ,image,我们都可以在属性窗口对该属性设置值,但是当属性的类型是结构体和自定义类的时候,就不能再属性窗口对属性直接设置值了。
4)DisplayName
用于改变显示到属性窗体的名称,改变前如下
5)DesignerSerializationVisibility
msdn的解释是:指定属性对设计时序列化程序所具有的可见性。
其实就是我们在设计器中设置的属性在form.designer.cs这个类中的怎么显示,显示多少相关信息
DesignerSerializationVisibility.Hidden 什么都不显示
DesignerSerializationVisibility.Visible 不显示集合中的详细成员
DesignerSerializationVisibility.Content 显示的非常详细,把集合中的元素(不一定是集合)都显示了
实例
以SunnyUI中 UIEditForm为栗子
相关引用
using System.ComponentModel;
1.创建窗体UIEditForm
2.后台逻辑代码
引用秘密
[Category("SunnyUI"), Description("确定按钮点击事件")]
public event EventHandler ButtonOkClick;
[Category("SunnyUI"), Description("取消按钮点击事件")]
public event EventHandler ButtonCancelClick;
[Description("确定按钮可用状态"), Category("SunnyUI")]
[DefaultValue(true)]
public bool ButtonOKEnabled
{
get => btnOK.Enabled;
set => btnOK.Enabled = value;
}
[Description("取消按钮可用状态"), Category("SunnyUI")]
[DefaultValue(true)]
public bool ButtonCancelEnabled
{
get => btnCancel.Enabled;
set => btnCancel.Enabled = value;
}
3.窗体继承引用
当然还有事件自定义
最新文章
- 使用 Spring 3 来创建 RESTful Web Services
- angular的工具方法笔记(equals, HashKey)
- RegexOne
- jQuery1.9.1针对checkbox的调整
- jsp页面中从forEach里向action里面传递其中的一个对象
- 如何用Visio画venn(维恩)图
- Java 读书笔记 (五) 目标数据类型转换
- 题解-CodeChef IOPC14L Sweets Problem
- Codeforces 576E Painting Edges [分治,并查集]
- Spark-Unit1-spark概述与安装部署
- 160CrackMe练手 002
- jenkins+ant+jmeter自动化性能测试平台
- Spring mvc Json 的正确返回姿势
- java 异常的限制
- React Native之进度条ProgressViewIOS的使用
- 201621123010《Java程序设计》第11周学习总结
- 三目运算符与if else的运行效率
- SpringMVC + Hibernate + MySQL 的简易网页搭建(Dao层 实现篇)
- [BZOJ2780][SPOJ8093]Sevenk Love Oimaster
- 动态规划:HDU-1398-Square Coins(母函数模板)
热门文章
- react lodash节流this找不到正确用法
- Python_基础_Print_转义字符和原字符
- administrator 启用
- 路飞之-后台日志封装-前后端分离的rbac项目演示-全局异常处理封装-封装Response-luffy数据库创建-软件开发模式-User模块用户表-django的配置文件-开启media访问
- PHP 静态延迟绑定 static
- windows terminal用ssh连接已重装的服务器提示REMOTE HOST IDENTIFICATION HAS CHANGED!
- 用telnet远程连接linux系统
- 监听异常:The listener supports no services
- python存储xml格式数据
- 【git】3.5 git分支-远程分支