Ice*_*ind 3 .net c# gdi+ winforms
伙计们,我知道这将是一个简单的答案,但我似乎无法弄明白.我有一个C#Winform应用程序,我正在尝试构建.我试图在表格底部上方60像素处绘制一条白线.我正在使用此代码:
private void MainForm_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawLine(Pens.White, 10, this.Height-60, 505, this.Height-60);
}
Run Code Online (Sandbox Code Playgroud)
很简单,但没有绘制线.经过一些调试后,我发现它正在画线,但它正在我的表格之外.如果我将-60更改为-175,那么我可以在表单底部看到它.这将解决我的问题,除非我的表格的高度发生变化,线条越来越接近我的表格底部,直到最终,它再次脱离形式.我究竟做错了什么?我使用错误的图形单元吗?或者,我需要做一个更复杂的计算来确定表格底部的60个像素?
你需要使用ClientSize.Height
而不是Height
.该Height
属性返回整个表单的高度(包括标题栏和窗口的其他部分).该ClientSize
物业给你,你可以绘制区域的大小.
有关更多信息,请参阅ClientSize
MSDN上的属性.