在WinForms中绘制控件属性的默认值可以通过重写控件的OnPaint方法来实现。以下是一个示例代码:
using System.Drawing; using System.Windows.Forms; public class MyControl : Control { public MyControl() { SetStyle(ControlStyles.OptimizedDoubleBuffer, true); } protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); // 绘制控件属性的默认值 using (SolidBrush brush = new SolidBrush(Color.Black)) { e.Graphics.DrawString("Default Value 1: " + DefaultValue1.ToString(), Font, brush, new PointF(10, 10)); e.Graphics.DrawString("Default Value 2: " + DefaultValue2.ToString(), Font, brush, new PointF(10, 30)); } } // 添加需要展示默认值的属性 private int _defaultValue1 = 0; public int DefaultValue1 { get { return _defaultValue1; } set { _defaultValue1 = value; Invalidate(); } } private string _defaultValue2 = "Default"; public string DefaultValue2 { get { return _defaultValue2; } set { _defaultValue2 = value; Invalidate(); } } }
在上面的示例中,我们创建了一个自定义控件MyControl,并重写了OnPaint方法来绘制控件属性的默认值。我们添加了两个属性DefaultValue1和DefaultValue2,并在属性的setter中调用Invalidate方法来触发控件的重绘。在OnPaint方法中,我们使用Graphics对象绘制属性的默认值。您可以根据需要添加更多的属性和自定义绘制逻辑。