2016-02-26 71 views
5

我的應用程序有一個奇怪的問題。Windows窗體奇怪的控制大小在不同的計算機上

它是如何工作正常

我展示罰款我已經安裝了應用程序,除了每一個作品的PC形式(我將在後面說明問題)。

這是最小可能的尺寸。

enter image description here

如果我調整了它可以正常工作,你可以在這個其他圖像看到。

enter image description here

它工作得很好,它完全符合。

我所做的

所有形式的控件已正確固定,並分佈在子控件,面板和一切需要適當調整。 將所有視圖中的AutoScaleMode設置爲字體。

這對我嘗試過的每個Windows 7,Windows 8和Windows 10都有效(我現在在Windows 10上)。

我在自己的計算機上修改了DPI,它仍然正確調整大小。

我改變了屏幕分辨率,並且正確調整了大小(雖然我目前在1920x1080下工作)。

我已經更改了系統字體大小,並且效果很好。

那麼,問題在哪裏?

這裏有個奇怪的問題。有一臺電腦(Windows 7,1920x1080,100%DPI),應用程序沒有正確調整大小。中央控件(datagridview和預覽/比較框)以非常小的尺寸顯示。然後,如果我調整表單的大小,那麼按照底部和右側的錨點調整這些控件的大小,就像預期的那樣。這是一張照片,顯示了這一點。

enter image description here

誰能給我這是爲什麼努力這樣只是在一臺計算機的解釋? (正如我所說,我已經嘗試了其他W7電腦,並且效果很好)。

問候。

+0

這看起來像軟件環境問題。嘗試重新安裝框架,做Windows更新等。您定位哪個框架版本?嘗試在您的應用程序需要的那臺PC上安裝完全框架 – Sinatr

+0

我正在.NET框架4上開發它。爲什麼其他框架可能導致這個問題?我的意思是,在我定義爲依賴.NET Framework 4的安裝程序中,我從來沒有遇到任何問題。 – Alex

+0

在這臺PC上是否有一些額外的窗口管理器軟件?我的意思是這樣的:http://softwarerecs.stackexchange.com/questions/1816/program-to-save-visible-windows-locations-and-later-restore-the-layout http://www.techsupportalert.com /content/best-free-window-manager-resizer-arranger.htm這可能是問題的根源。 –

回答

0

錨定可能會導致WinForms中有時會出現意外。一個可能的解決方案是始終使用Dock屬性並停靠/堆疊元素,與WPF類似。您可以通過隱藏面板和Dock,PaddingMargin屬性來實現所有功能。

看到一個例子:https://stackoverflow.com/a/32142897/5114784

+0

正如我所說的,問題是,這些控件加載尺寸小於預期。錨和/或碼頭屬性工作得很好,並在表單中設置好。 – Alex

+0

網格似乎被錨定,因爲它調整窗體大小時會延伸。相反,你應該停靠它以避免這樣的問題。 – taffer