我有一個Windows窗體,其中我有一個選項卡控件,其中我有其他控件。調整窗體大小Control.Bounds.Bottom創建意想不到的結果
由於控制量是動態的,我想尺寸窗體恰到好處我有這樣一段代碼:
int w = 0;
int h = 0;
foreach (Control x in Tab_Control.Controls)
{
if (x.Bounds.Right > w) w = x.Bounds.Right;
if (x.Bounds.Bottom > h) h = x.Bounds.Bottom;
}
Tab_Control.Size = new Size(w, h);
Form1.Size = new Size(w, h);
雖然這種設置形式寬度正好其高度作物上的底部的兩個控制。我認爲這可能是因爲位置是相對於父控件的,但是當我使用「PointToScreen(Point.Empty)」來獲得一些真實的座標時,我發現差異是21像素,這並沒有多大幫助。
所以我想知道爲什麼設置窗體高度爲h結束太短。
設置ClientSize工作,但將「AutSize」設置爲True,將「AutoSizeMode」設置爲「GrowAndShrink」會出於某種原因裁剪一些底部控件(有邊距)。 – mathgenius
Nvm,它不起作用,因爲它中有一個Tab Control,它本身沒有AutoSize propery。 – mathgenius