要在 Button 控件上自定义绘制文本,您需要创建一个自定义 Button 类并重写其 OnPaint 方法
using System;
using System.Drawing;
using System.Windows.Forms;
public class CustomButton : Button
{
public CustomButton()
{
this.SetStyle(ControlStyles.UserPaint | ControlStyles.AllPaintingInWmPaint | ControlStyles.DoubleBuffer, true);
}
protected override void OnPaint(PaintEventArgs pevent)
{
// 调用基类的 OnPaint 方法以绘制按钮背景和边框
base.OnPaint(pevent);
// 设置文本格式
StringFormat stringFormat = new StringFormat();
stringFormat.Alignment = StringAlignment.Center;
stringFormat.LineAlignment = StringAlignment.Center;
// 设置文本颜色和字体
Color textColor = this.Enabled ? ForeColor : SystemColors.GrayText;
Font textFont = new Font(this.Font, FontStyle.Bold);
// 绘制文本
pevent.Graphics.DrawString(this.Text, textFont, new SolidBrush(textColor), this.ClientRectangle, stringFormat);
}
}
现在,您可以在窗体上使用此自定义 Button 控件。请注意,这个示例将文本设置为粗体,您可以根据需要修改文本样式。如果您希望在运行时更改文本样式,可以将相关属性添加到自定义 Button 类中,并在 OnPaint 方法中使用这些属性。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。