C# WinForm窗体控件Panel修改边框颜色以及边框宽度方法
C# WinForm窗体控件Panel修改边框颜色以及边框宽度方法
1.新建组件这里可以自定义一个Panel控件起名为PanelEx
2.增加一个BoderColor属性和BoderSize属性
1 private Color _BorderColor = Color.Black; 2 3 [Browsable(true), Description("边框颜色"), Category("自定义分组")] 4 public Color BorderColor 5 { 6 get { return _BorderColor; } 7 set 8 { 9 _BorderColor = value; 10 this.Invalidate(); 11 } 12 } 13 14 private int _BorderSize = 1; 15 16 [Browsable(true), Description("边框粗细"), Category("自定义分组")] 17 public int BorderSize 18 { 19 get { return _BorderSize; } 20 set 21 { 22 _BorderSize = value; 23 this.Invalidate(); 24 } 25 }
3.控件代码继承Panel并重写OnPaint方法
1 /// <summary> 2 /// 重写OnPaint方法 3 /// </summary> 4 /// <param name="e"></param> 5 protected override void OnPaint(PaintEventArgs e) 6 { 7 ControlPaint.DrawBorder(e.Graphics, 8 this.ClientRectangle, 9 this._BorderColor, 10 this._BorderSize, 11 ButtonBorderStyle.Solid, 12 this._BorderColor, 13 this._BorderSize, 14 ButtonBorderStyle.Solid, 15 this._BorderColor, 16 this._BorderSize, 17 ButtonBorderStyle.Solid, 18 this._BorderColor, 19 this._BorderSize, 20 ButtonBorderStyle.Solid); 21 }
4.添加测试窗体并添加PanelEx控件
编译运行测试
程序源代码工程文件下载
分类:
03C#语言开发以及相关技术
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义