C#VB.net如何增加WinForms中复选框的大小?

如何增加.Net WinForm中复选框的大小。我尝试了"高度"和"宽度",但它不会增加Box的大小。

最佳答案

复选框的大小在Windows窗体内是硬编码的,您不能将其弄乱。一种可能的解决方法是在现有复选框的上方绘制一个复选框。这不是一个很好的解决方案,因为自动调整大小无法按原样工作,并且文本对齐困惑了,但是可以使用。

在您的项目中添加一个新类,并粘贴以下代码。编译。将新控件从工具箱的顶部拖放到窗体上。调整控件的大小,以便获得所需的框大小,并确保它足够宽以适合文本。

<code>

using System;

using System.Drawing;

using System.Windows.Forms;

class MyCheckBox : CheckBox {

public MyCheckBox() {

this.TextAlign = ContentAlignment.MiddleRight;

}

public override bool AutoSize {

get { return base.AutoSize; }

set { base.AutoSize = false; }

}

protected override void OnPaint(PaintEventArgs e) {

base.OnPaint(e);

int h = this.ClientSize.Height - 2;

Rectangle rc = new Rectangle(new Point(0, 1), new Size(h, h));

ControlPaint.DrawCheckBox(e.Graphics, rc,

this.Checked ? ButtonState.Checked : ButtonState.Normal);

}

}

</code>

相关推荐
jiayong238 分钟前
第 8 课:开始引入组合式函数
前端·javascript·学习
田八11 分钟前
聊聊AI的发展史,AI的爆发并不是偶然
前端·人工智能·程序员
zhanghongbin0121 分钟前
AI 采集器:Claude Code、OpenAI、LiteLLM 监控
java·前端·人工智能
hhh3u3u3u24 分钟前
Visual C++ 6.0中文版安装包下载教程及win11安装教程
java·c语言·开发语言·c++·python·c#·vc-1
IT_陈寒27 分钟前
Python的列表推导式里藏了个坑,差点让我加班到凌晨
前端·人工智能·后端
加号331 分钟前
【C#】实现沃德普线光控制器通信控制(附完整源码)
开发语言·c#
吴声子夜歌35 分钟前
ES6——正则的扩展详解
前端·mysql·es6
天***88521 小时前
Edge 浏览器离线绿色增强版+官方安装包,支持win7等系统
前端·edge
漫游的渔夫1 小时前
别再直接 `json.loads` 了!AI 返回的 JSON 坑位指南
前端·人工智能
软件工程师文艺1 小时前
从0到1:Claude Code如何用React构建CLI应用
前端·react.js·前端框架