2013-12-17 2 views
16

wpfデータグリッドを作成してすべての空き領域を埋める方法と、ウィンドウのサイズを変更する方法はありますか? データグリッドがグリッド内にあることを確認します。wpfデータグリッドを作成してすべての空き領域を埋め、ウィンドウでサイズを変更するにはどうすればいいですか?

+0

コードを表示します。あなたの親グリッドは、 'code'に応じて適切に設定されなければなりません。 –

+0

@dirtが要求したので、コードを表示してください。一般的に私はこの特別な理由で 'Grid'を使用しません。私のコントロールが動的にサイズ変更される必要があるときは、私は 'DockPanel'と' StackPanel'を使って自分のコントロールを整理します。 'DockPanel'は利用可能なスペースを最後に定義された論理的な子で埋め尽くすので、多くの柔軟性を提供します – Sandesh

答えて

18

あなたはそれがグリッド内なら、あなたはこの

ようなものを設定することができるはず Stretch

HorizontalAlignmentVerticalAlignmentを設定することにより(または任意のWPFコントロールのための)データグリッドのためにそれを行うことができるはずです

<Grid> <!-- parent grid or whatever --> 
    <DataGrid HorizontalAlignment="Stretch" VerticalAlignment="Stretch" ... > 
    </DataGrid> 
</Grid> 
+1

あなたの' Window'コントロールに 'SizeToContent =" WidthAndHeight "を設定することもできます。 –

10
  1. 決してそれか、その親コン​​トロール
  2. デフォルト水平および垂直aligであるため、水平および垂直方向の配置に心配する必要はありませんし、高さや幅を設定ナメントは伸びる。 上記の場合は正常に動作するはずです:)
+0

それは私のために働いた、歓声! – MushyPeas

4

親コントロールのすべてのheightプロパティとwidthプロパティを削除します。水平および垂直のプロパティを削除します。行の高さを親グリッドの*として定義します。

<Grid> 
<Grid.RowDefinitions> 
<RowDefinition Height="*"/> 
<RowDefinition Height="Auto"/> 
</Grid.RowDefinitions> 
    <DataGrid Grid.Row="0" > 
    </DataGrid> 
</Grid> 
+0

グリッドではなく、DataGridです。 – Xav987

0

DataGridをパネルにラップすることなくグリッドに直接挿入します。

<Grid> 
     <DataGrid> 
     </DataGrid> 
    </Grid> 
関連する問題