在C#表格上绘制的线太长

时间:2014-02-11 22:11:36

标签: c# forms system.drawing

我还没有看到任何与此有关的帖子,但是在我的表格上绘制的一条线应该在表格周围的边界之前停止5px,但事实并非如此。此行的目的是在需要时在一个表单上分隔两个不同的用户控件。

    protected override void OnPaint(PaintEventArgs e)
    {
        base.OnPaint(e);
        if (optionalSecondPanel != null)
        {
            Graphics g;

            g = e.Graphics;

            Pen myPen = new System.Drawing.Pen(System.Drawing.Color.Black);
            g.DrawLine(myPen, mainPanel.Width + 5, btnPannel.Bottom + 5, mainPanel.Width + 5, this.Height - 5);
            myPen.Dispose();
            g.Dispose();
        }
    }

然而,当在屏幕上绘制时,分隔用户控件的线一直到表单的底部。它应该不会停止。

1 个答案:

答案 0 :(得分:0)

g.DrawLine(myPen, mainPanel.Width + 5, btnPannel.Bottom - 5, mainPanel.Width + 5, this.Height - 5);

我相信.Bottom增加了下降,所以如果你减去5,它应该提高吧的底部。