如何在Windows窗体应用程序(C#)中创建垂直分隔符

如何在Windows窗体应用程序(C#)中创建垂直分隔符,c#,winforms,C#,Winforms,对于一个项目,我必须制作一个Windows窗体应用程序来生成Mandelbrotfigure。现在我想在左边的UI和右边的图形之间添加一个垂直分隔符(见图)。你知道怎么做吗 您必须将所有内容移动到一个文件夹中。此容器包含两个面板和一个分隔器。您必须将控件放在一侧,将图像放在另一个面板上 在你的特殊情况下,你可能不得不重新开始 使用设计器,应在填充时设置SplitContainer的属性。您可以通过选择并拖动分隔器来移动分隔器(仅当您选择了SplitContainer时才可能)。一旦分隔符位于正确

对于一个项目,我必须制作一个Windows窗体应用程序来生成Mandelbrotfigure。现在我想在左边的UI和右边的图形之间添加一个垂直分隔符(见图)。你知道怎么做吗


您必须将所有内容移动到一个文件夹中。此容器包含两个面板和一个分隔器。您必须将控件放在一侧,将图像放在另一个面板上

在你的特殊情况下,你可能不得不重新开始

使用设计器,应在填充时设置SplitContainer的属性。您可以通过选择并拖动分隔器来移动分隔器(仅当您选择了SplitContainer时才可能)。一旦分隔符位于正确的位置,最好将属性设置为左侧面板,因为在最大化时,您可能不希望该面板增长。

只要属性设置为False,仍然可以在应用程序中移动分隔符。

您必须将所有内容移动到应用程序中。此容器包含两个面板和一个分隔器。您必须将控件放在一侧,将图像放在另一个面板上

在你的特殊情况下,你可能不得不重新开始

使用设计器,应在填充时设置SplitContainer的属性。您可以通过选择并拖动分隔器来移动分隔器(仅当您选择了SplitContainer时才可能)。一旦分隔符位于正确的位置,最好将属性设置为左侧面板,因为在最大化时,您可能不希望该面板增长。

只要属性设置为False,仍然可以在应用程序中移动分隔符。

GUI设计器仅显示空表单。.GUI设计器仅显示空表单。。
public class VertSep : Control
{
    private Color lineColor;
    private Pen linePen;

    public VertSep()
    {
        this.LineColor = Color.LightGray;
        SetStyle( ControlStyles.SupportsTransparentBackColor, true );
    }

    public Color LineColor
    {
        get
        {
            return this.lineColor;
        }
        set
        {
            this.lineColor = value;

            this.linePen = new Pen( this.lineColor, 1 );
            this.linePen.Alignment = PenAlignment.Inset;

            Refresh();
        }
    }

    protected override void Dispose( bool disposing )
    {
        if( disposing && this.linePen != null )
        {
            this.linePen.Dispose();
            this.linePen = null;
        }

        base.Dispose( disposing );
    }

    protected override void OnPaint( PaintEventArgs e )
    {
        var g = e.Graphics;
        int x = this.Width / 2;

        g.DrawLine( linePen, x, 0, x, this.Height );

        base.OnPaint( e );
    }
}