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>

相关推荐
其实防守也摸鱼12 分钟前
前端应用的离线暂停更新策略:构建稳定可靠的渐进式部署方案
服务器·前端·数据库·学习·ai·命令行·linux系统
太平洋月光20 分钟前
Antv G2中自定义技巧📊
前端·数据可视化
shmily麻瓜小菜鸡31 分钟前
前端“伪防盗链”方案
前端·javascript·vue.js·bootstrap·echarts
mayaairi32 分钟前
JS数组完全指南(含十大操作详解)
开发语言·前端·javascript
IT_陈寒1 小时前
Python的线程池把我CPU跑满了,原来少传了个参数
前端·人工智能·后端
喜欢的名字被抢了1 小时前
写-Chrome-扩展时踩过的那些-MV3-的坑
前端·chrome
网安老伯1 小时前
网络安全基础要点知识介绍(非常详细),零基础入门到精通,看这一篇就够了
运维·前端·网络协议·web安全·网络安全·职场和发展
AndyHeee1 小时前
Linux 内核底层机制:设备树(Device Tree)的数据结构与内存组织
linux·前端·数据结构
wuqingshun3141591 小时前
springBoot是如何通过main方法启动web项目的?
前端·spring boot·后端
xxwl5851 小时前
HTML 小总结:从骨架到枝叶,系统掌握网页结构
前端·html