創建無邊框小視窗(如 80×25 像素),直接設置 this.Size = new Size(80, 25) 卻發現實際顯示為 124×36,且尺寸小於該閾值時無法正確設置。
WinForms 內部對最小視窗尺寸有默認限制(約 124×36),屬於框架已知行為而非代碼錯誤。
同時設置 MaximumSize 和 MinimumSize 為目標尺寸,強制繞過框架限制:
public void AdjustSize()
{
Size newSize = new Size(80, 25);
this.MaximumSize = this.MinimumSize = newSize;
this.Size = newSize;
}
MinimumSize 可設為極小值(如 new Size(1, 1))FormBorderStyle.FixedSingle 等無標題欄樣式修正後視窗精確顯示為 80×25 像素,符合預期。
此技巧可用於製作緊湊工具欄、通知彈窗等微型界面元素。