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>

相关推荐
华玥作者2 小时前
[特殊字符] VitePress 对接 Algolia AI 问答(DocSearch + AI Search)完整实战(下)
前端·人工智能·ai
.房东的猫2 小时前
ERP(金蝶云星空)开发【安装篇】
c#
Mr Xu_2 小时前
告别冗长 switch-case:Vue 项目中基于映射表的优雅路由数据匹配方案
前端·javascript·vue.js
前端摸鱼匠2 小时前
Vue 3 的toRefs保持响应性:讲解toRefs在解构响应式对象时的作用
前端·javascript·vue.js·前端框架·ecmascript
lang201509283 小时前
JSR-340 :高性能Web开发新标准
java·前端·servlet
好家伙VCC4 小时前
### WebRTC技术:实时通信的革新与实现####webRTC(Web Real-TimeComm
java·前端·python·webrtc
未来之窗软件服务4 小时前
未来之窗昭和仙君(六十五)Vue与跨地区多部门开发—东方仙盟练气
前端·javascript·vue.js·仙盟创梦ide·东方仙盟·昭和仙君
嘿起屁儿整4 小时前
面试点(网络层面)
前端·网络
VT.馒头4 小时前
【力扣】2721. 并行执行异步函数
前端·javascript·算法·leetcode·typescript
phltxy5 小时前
Vue 核心特性实战指南:指令、样式绑定、计算属性与侦听器
前端·javascript·vue.js