2008-10-10 72 views
11

Visual Studio 2008 SP1(儘管IIRC,2005年的行爲也出現了)不斷調整我使用的幾個網格控件(Janus.GridEx是精確的)的大小。如何阻止Visual Studio調整控件大小?

我可以調整它們恢復正常,保存,並編譯得很好。當它編譯時,這兩個控件將擴展到荒謬的價值。

更多信息: 這個問題是關係到設置在控制Anchor屬性。如果我將Anchor屬性設置爲兩端(如左和右),則在設計器文件被編譯時,它會將控件的寬度/高度設置爲容器的寬度/高度。

看來,在設計文件中,Anchor屬性的大小屬性前設置。手動編輯(我知道,對我很慚愧)將Size屬性放在第一位的文件沒有幫助,因爲當Designer文件被編譯時,它似乎也是從頭開始重寫的。

所以我想我真正的問題是,如何讓VS表單設計尊重我的初始大小聲明以及Anchor屬性。

+0

發佈設計師的代碼;你確定你還沒有將Dock屬性設置爲Fill? – 2008-10-11 14:57:58

+0

碼頭是無。這不是控制行爲錯誤的問題。運行時,應用程序將按照其應有的運行。就在設計師身上,高度和/或寬度變得太大而無法使用。 – 2008-10-13 21:55:21

+0

@ [toast]:好的。我以前只遇到過這種問題,並且無法解決它 - 除了按照上面的建議在構造函數中設置事物。 – 2008-10-13 23:14:54

回答

2

我通常解決這類故障通過將「好」的代碼的形式構造函數,調用的InitializeComponent()之後,所以它覆蓋任何亂七八糟的自動設計魔術可能會導致。

0

通常當我有這個問題,我結束了使用上的控制面板和標籤(空白文本)與碼頭和padding屬性來獲得相同的視覺效果。這對於你的形式是否可行取決於它是如何佈置的。

並不是因爲所有的額外控制的最佳解決方案,但它能夠完成任務。

1

我目前正在做的是處理Resize事件並在兩個需要的控件上設置Size。鑑於Anchor屬性的預期效果,我覺得這有點混亂。

6

我有同樣的問題。表單上的用戶控件實例具有這些設置。 錨 - 沒有 自動調整大小 - 假 碼頭 - 沒有

它仍然可怕地調整他們每次我做了一個構建等

我發現,在設計屬性的用戶控制時間,它已autoscalemode設置字體。我將其更改爲無,並解決了問題。