在WinForms中,GroupBox控件通常用来将相关的控件进行分组,以便更好地组织界面。除了基本的用法外,还可以通过一些高级技巧来扩展其功能和美化界面,以下是一些C#中GroupBox控件的高级用法:
public class CustomGroupBox : GroupBox
{
    protected override void OnPaint(PaintEventArgs e)
    {
        base.OnPaint(e);
        
        e.Graphics.DrawRectangle(Pens.Red, ClientRectangle);
    }
}
public class CustomGroupBox : GroupBox
{
    private string _title = "Custom GroupBox";
    public string Title
    {
        get { return _title; }
        set { _title = value; Invalidate(); }
    }
    protected override void OnPaint(PaintEventArgs e)
    {
        base.OnPaint(e);
        e.Graphics.DrawString(_title, Font, Brushes.Black, new Point(6, -2));
    }
}
public class ExtendedGroupBox : GroupBox
{
    private Button _button;
    private TextBox _textBox;
    public ExtendedGroupBox()
    {
        _button = new Button();
        _button.Text = "Click Me";
        _button.Location = new Point(10, 20);
        _button.Click += Button_Click;
        Controls.Add(_button);
        _textBox = new TextBox();
        _textBox.Location = new Point(10, 50);
        Controls.Add(_textBox);
    }
    private void Button_Click(object sender, EventArgs e)
    {
        MessageBox.Show("Button Clicked!");
    }
}
通过以上高级用法,可以更灵活地使用GroupBox控件,实现更丰富和个性化的界面效果。同时,也可以根据具体需求进行定制和扩展,提升用户体验和界面设计的质量。