2010-05-24 26 views
3

我有一個顯示在以下幾個佈局一個DataGridViews Windows窗體:
(圖像根本無法訪問託管工作,所以請原諒ASCII藝術...)的WinForms:讓一組控件擴展垂直

┌─────────────────────────────────────────┐ 
│┌───────────┐┌──────────────────────────┐│ 
││   ││       ││ 
│└───────────┘│       ││ 
|┌───────────┐│       ││ 
││   ││       ││ 
│└───────────┘│       ││ 
|┌───────────┐│       ││ 
││   ││       ││ 
│└───────────┘└──────────────────────────┘│ 
└─────────────────────────────────────────┘ 

不幸的是,當用戶調整的形式是高,形式最終看起來像這樣:

┌─────────────────────────────────────────┐ 
│┌───────────┐┌──────────────────────────┐│ 
││   ││       ││ 
│└───────────┘│       ││ 
|    |       || 
|    |       || 
|┌───────────┐│       ││ 
││   ││       ││ 
│└───────────┘│       ││ 
|    |       || 
|    |       || 
|┌───────────┐│       ││ 
││   ││       ││ 
│└───────────┘└──────────────────────────┘│ 
└─────────────────────────────────────────┘ 

取而代之的是:

┌─────────────────────────────────────────┐ 
│┌───────────┐┌──────────────────────────┐│ 
││   ││       ││ 
││   ││       ││ 
│└───────────┘│       ││ 
|┌───────────┐│       ││ 
││   ││       ││ 
││   ││       ││ 
│└───────────┘│       ││ 
|┌───────────┐│       ││ 
││   ││       ││ 
││   ││       ││ 
│└───────────┘└──────────────────────────┘│ 
└─────────────────────────────────────────┘ 

要重現此,錨左上角的DataGridView到左上,中左翼的DataGridView到左,和左下的DataGridView到左下角,而大的DataGridView所有4

我能做些什麼來獲得我想要的行爲?

回答

6

把一個TableLayoutPanel放在左邊一列中,有3行和1列,用對接stlye「fill」將每個較小的控件放在一行中,然後將TableLayoutPanel固定在左邊,上邊和下邊。

+0

爲了清楚起見,我忽略了這一點,但頂部和中間網格之間有兩個按鈕,中間網格和底部網格之間還有兩個按鈕。我將它們與拆分容器合併到表格佈局控件中,但不幸的是,當我調整其增長的按鈕時,不是DataGridView。有什麼建議麼? – DonaldRay 2010-05-24 19:47:09

+0

沒關係,我找到了。在設計器生成的代碼中,它將RowStyles添加到表格佈局控件中。我只需將網格行中的按鈕行從「百分比」更改爲「絕對」,反之亦然。 – DonaldRay 2010-05-24 19:51:40

0

嘗試將某些SplitContainer控件與某些Panel或GroupBox容器結合使用。然後,您的用戶將有能力根據需要進行尺寸調整。