2009-09-17 46 views
3

我有一個對話框,右邊填充了按鈕。該對話框使用Windows窗體構建。我有以下鏈接樣機:original dialog (我會包括它,但顯然我不能使用圖片代碼)傳播控件來填充空間作爲對話框調整大小

我想在右列的按鈕來調整自己,以填補剩餘對話框調整大小時的垂直空間。對於我來說,按鈕的大小是否增加或者按鈕是否保持相同的大小,而它們之間的距離是否增加並不重要。我只是想讓按鈕從頂部到底部。 (我也有這個樣機,但我只能包含一個鏈接)

我已經嘗試在FlowLayoutPanel中託管按鈕,但它們不會隨着對話框的延伸而增加,我只在底部獲得空白我用完了按鈕。我也嘗試過一個TableLayoutPanel並得到了相同的結果,但我可能誤用了它。有沒有人有任何想法,我可以做到這一點?

由於提前, 傑里米

回答

3

爲了讓你開始。使用TableLayoutPanel,將其Anchor屬性設置爲頂部,底部,左側和右側。根據需要將行和列設置爲百分比。我建議每個控制都有自己的單元。請注意,「單元格」中的每個控件都可以根據需要設置其Dock和Anchor屬性。

+0

感謝您的信息,它的工作完美。但是,一個問題是......我無法讓TableLayoutPanel同時將Anchor屬性設置爲全部四個點並將Dock樣式設置爲Fill。設置一個總是重置另一個,但這可能是託管TableLayoutPanel的第三方控件工具包的副作用。無論如何,當我設置TableLayoutPanel的Dock風格以及它的子控件時,將控件完全拉伸到表單上。 再次感謝! –

+1

是的,錨和碼頭是獨家。你只能設置一個或另一個。如果你同時需要,使用面板「錨定」,然後「停靠」你的控制面板。 – AMissico

0

你可以用TableLayoutPanel來做到這一點。爲按鈕創建一個列,每個按鈕在列中都有自己的行/單元格。將每行設置爲高度的均勻百分比(如果有10個按鈕,則每行將爲10%),並將TableLayoutPanel停靠在屏幕的右側。然後,將按鈕放入它們的行並將它們設置爲完全對接。然後,當對話框展開時,TableLayoutPanel將展開以填充屏幕的整個右側,每行將按比例調整,並且每個按鈕將展開以適應新的行大小。

您可能需要稍微調整一下以適應您的需求,尤其是與窗口中其他內容的關係。