2013-08-30 37 views
1

我需要在重新調整窗體大小(例如,最大化)後按百分比設置組件的寬度和長度(例如,DGV(DataGridView))。例如,我的DGV寬度應爲100%,高度應爲45%。按百分比設置組件的尺寸

我讀過Dock和Anchor,但是我無法實現我的想法。

有沒有適合這個問題的方法?

+0

對於我們這些誰不知道DGV是什麼...? – oddparity

+1

@oddparity我猜'DataGridView' – sloth

+0

是的,它是'DataGridView'(DGV)。 – Chavoosh

回答

2

您可以使用TableLayoutPanel來處理您的佈局。

對於您的示例,創建一個TableLayoutPanel單列和兩行,將行大小設置爲55%和45%,並將DataGridView添加到第二列。

例子:

var form = new Form(); 

var dgv = new DataGridView { Dock = DockStyle.Fill }; 

var table = new TableLayoutPanel 
{ 
    Dock = DockStyle.Fill, 
    ColumnCount = 1, 
    RowCount = 2 
}; 

table.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 100F)); 
table.RowStyles.Add(new RowStyle(SizeType.Percent, 55F)); 
table.RowStyles.Add(new RowStyle(SizeType.Percent, 45F)); 

table.Controls.Add(dgv, 0, 1); 

form.Controls.Add(table); 

form.ShowDialog(); 

+0

非常感謝@Dominic。我用TableLayoutPanel和FlowLayout解決它。 – Chavoosh