2011-11-11 59 views
1

wpfデータグリッドに範囲を指定する列を挿入します。 これは、私はヘッダー "範囲"と1つの列を取ると思うと私は "最小"と "最大"のような2つの列に分割したい。 そのようなデータを表現することは可能ですか? そうであれば、データグリッドへのデータバインディングはどのようにバインディングが変わるのでしょうか?Wpf DataGrid列分割

+1

なぜmaxとminimaという名前のクラスの2つのフィールドを表す2つの列があるのではないかというと、それはすでに行の分割された要素であるため、 –

答えて

0

あなたが最大/最小部品非サイズ変更可能なあなたを保つことができた場合は、かなり単純な解決策が存在する:あなたのオブジェクトで

  1. はタプル型のプロパティを作成したり、最小/最大の構造を表しますどんなタイプ。次のよう
  2. は(サンプルバインディングはタプルで動作するはずです私もそれをしようとしなかった)あなたのグリッドにテンプレート列を追加します:

<DataGrid> 
    <DataGrid.Columns> 
    <DataGridTemplateColumn Header="Min/Max"> 
     <DataGridTemplateColumn.CellTemplate> 
     <DataTemplate> 
      <Grid> 
      <Grid.RowDefinitions> 
       <RowDefinition /> 
       <RowDefinition /> 
      </Grid.RowDefinitions> 
      <TextBlock Grid.Column="0" Text="{Binding Item1}" /> 
      <TextBlock Grid.Column="1" Text="{Binding Item2}" /> 
      </Grid> 
     </DataTemplate> 
     </DataGridTemplateColumn.CellTemplate> 
    </DataGridTemplateColumn> 
    </DataGrid.Columns> 
</DataGrid> 

をグリッドBINDデータに