C# winform自定义控件

自定义控件最好单独占一个项目,方便后期扩展和其他项目使用。

1、为控件添加属性

csharp 复制代码
 [Category("自定义属性"), Description("图像高度")]
public double ImageHeight { get;  set; }

 [Category("自定义属性"), Description("图像宽度")]
public int ImageWidth{ get;  set; }
     

2、可以在Paint事件中进行控件绘制。

注意事项:

(1)Paint在控件初始化过程中会执行一次,可以通过Refresh()f方式,调用Paint事件。

(2)可将画布的SmoothingMode属性调整为HighQuality(提升绘图质量)

(3)GDI+ 中涉及到Brush的参数 ,需要使用SolidBrush来创建。

(4)C# 的GDI+ 在绘制带角度的矩形比较困难,若是想绘制一个带角度的矩形,可以通过划一条很宽的线来代替矩形。

3、自定义控件完成后,重新生成解决方案,接口在工具箱中使用该控件。

相关推荐
qq_31706095几秒前
java之http client工具类
java·开发语言·http
ZJKJTL8 分钟前
Spring中使用ResponseStatusExceptionResolver处理HTTP异常响应码
java·spring·http
6230_10 分钟前
关于HTTP通讯流程知识点补充—常见状态码及常见请求方式
前端·javascript·网络·网络协议·学习·http·html
莫莫向上成长1 小时前
Javaweb开发——maven
java·maven
说书客啊1 小时前
计算机毕业设计 | springboot旅行旅游网站管理系统(附源码)
java·数据库·spring boot·后端·毕业设计·课程设计·旅游
一只爱吃“兔子”的“胡萝卜”1 小时前
八、Maven总结
java·maven
pan_junbiao1 小时前
Vue组件:使用$emit()方法监听子组件事件
前端·javascript·vue.js
愿尽1 小时前
JavaWeb【day11】--(SpringBootWeb案例)
java·spring boot
hummhumm1 小时前
数据库系统 第46节 数据库版本控制
java·javascript·数据库·python·sql·json·database
No regret.1 小时前
JAVA基础:值传递和址传递
java·开发语言