如何为没有标题栏的表单制作自定义边框?

时间:2012-08-14 05:17:14

标签: c# forms border

我有一个没有标题栏的表单,但我希望我的表单仍然有边框,如下所示:

enter image description here

目前,我使用了一个文本框然后将其发送回来,我的表格有1px边框。我构建了一个小应用程序,所以我不想写长代码来绘制边框。有没有简单的方法来做到这一点:我希望我的表格有简单的黑色-3px边框,但没有标题栏???

语言:C#

2 个答案:

答案 0 :(得分:13)

如果通过将ControlBox设置为false并将FormBorderStyle设置为None

来删除标题栏

然后您可以订阅Form.Paint事件并使用类似的处理程序:

private void Form1_Paint(object sender, PaintEventArgs e)
{
   e.Graphics.DrawRectangle(new Pen(Color.Black, 3),
                            this.DisplayRectangle);                                     
}

答案 1 :(得分:2)

您可以覆盖Form.Paint事件或覆盖OnPaint方法。网络上有很多例子,比如http://www.codeproject.com/Articles/17874/Custom-shaped-form-with-a-drop-down-in-C