1. 程式人生 > 其它 >c# winform適配高DPI

c# winform適配高DPI

c# winform適配高DPI

現在的螢幕大部分都是高分屏,在這樣的螢幕下開發winfrom軟體就需要注意高DPI問題了

1.Form和UserControl的AutoScaleMode設定為Dpi

2.為專案新增應用程式清單檔案(app.manifest),並取消下面行的註釋

<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings>
<dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
</windowsSettings>
</application>

3.專案介面佈局(介面隨電腦解析度自動適應) -- 如果介面是固定大小,不需要考慮該情況

(1)TableLayoutPanel:把區域劃分成行和列,設定Anchor為Top|Bottom|Left|Right後,會隨著視窗的大小自動調整單元格大小。

(2)FlowLayoutPanel:按照從左到右、從上到下的順序排列子控制元件,設定Anchor後,會隨著視窗大小變化重新佈局。

(3)用控制元件的Anchor屬性確定控制元件的定位方式,使控制元件可以與視窗某邊界的位置固定或自動調整大小

(4)控制元件的Dock屬性可以讓子控制元件緊貼視窗邊界或充滿視窗。

4.如果是要填充滿介面

this.WindowState=FormWindowState.Maximized