2011-02-24 52 views
2

我有一個TableLayoutPanel,佔用整個區域,在碼頭填充。我創建了一個3乘3表/網格。我想設置中間單元格的高度和寬度,然後讓其他所有元素都是自動調整大小。這樣中間單元格中的內容位於容器的中心。C#Winforms中心內容

它看起來像我正在做這個錯誤的方式。集中容器(面板)中的內容的最佳方式是什麼?

回答

2

使用設計中,中心的行和列設置爲絕對的,其餘的50%。

0

試試這個:

在TableLayoutPanel中的右上方,有一個箭頭。點擊它,然後轉到「編輯行和列...」。指定中間行和中間列尺寸(百分比或絕對像素)。

5

設置第一列和最後一列以及Percent模式的第一行和最後一行,中間列和行設置爲Autosize

這將使中心單元始終居中並適應其內容大小。

enter image description here

下面是一些代碼來設置手動表:

tableLayout.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 50.0f)); 
tableLayout.ColumnStyles.Add(new ColumnStyle(SizeType.AutoSize)); 
tableLayout.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 50.0f)); 
tableLayout.RowStyles.Add(new RowStyle(SizeType.Percent, 50.0f)); 
tableLayout.RowStyles.Add(new RowStyle(SizeType.AutoSize)); 
tableLayout.RowStyles.Add(new RowStyle(SizeType.Percent, 50.0f)); 
0

試着簡單地將內容放置在父容器的中心,然後關閉所有錨定(具體而言,默認的頂部和左側)。它現在基本上應該是中心的。