3

グリッドがDataGridComboBoxColumnあり、セルの前景色を変更しようとしています(編集状態ではありません)。

これを使用して回避できることはわかっていますが、これDataGridTemplateColumnを試してみたいと思います。

比較:

<DataGridComboBoxColumn Header="Is Active" 
  SelectedItemBinding="{Binding IsActive}"
  EditingElementStyle="{StaticResource ComboBoxStyle}"
  ItemsSource="{StaticResource BooleanValues}">
</DataGridComboBoxColumn>

<DataGridTemplateColumn Header="IsActive">
  <DataGridTemplateColumn.CellTemplate>
    <DataTemplate>
      <TextBlock Text="{Binding IsActive}" 
        Style="{StaticResource DataGridTextBlockStyle}"/>
    </DataTemplate>
  </DataGridTemplateColumn.CellTemplate>
  <DataGridTemplateColumn.CellEditingTemplate>
    <DataTemplate>
      <Grid FocusManager.FocusedElement="{Binding ElementName=combo}">
        <ComboBox Name="combo"               
          SelectedValue="{Binding IsActive}"
          ItemsSource="{StaticResource BooleanValues}" />
       </Grid>
    </DataTemplate>
  </DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>

ヒントをありがとう!

4

1 に答える 1