いくつかの列を持つ WPF グリッド コントロールがあります。チェックボックス付きのcheckedit列もあります。
私が達成したいのは、ユーザーがグリッド コントロールで行を選択する (行をクリックする) ときに、チェックボックスが自動的にチェックされるようにすることです。
その後、ユーザーが別の行をクリックすると、新しく選択された行のチェックボックスがオンになり、以前に選択された行のチェックボックスがオフになります。
チェックボックスは無効になっているため、ユーザーは実際のチェックボックス自体をクリックする必要はありませんが、同じ行のどこかをクリックする必要があります。
基本的に、チェックボックスは、ユーザーがクリックした行を正確に示すインジケーターとして機能するため、たとえば削除ボタンをクリックしたときに正しいレコードがあることがわかります。
これが十分に説明的であることを願っています。
ありがとう
編集:申し訳ありません..DevExpressデータグリッドを使用していますが、以下の回答のプロパティを許可していないようです..
<!-- DX Grid with charges -->
<dxg:GridControl Grid.Row="1" Grid.ColumnSpan="7" FocusableChanged="FinanceOperationsGrid_FocusableChanged" Grid.RowSpan="6" DataSource="{Binding FinanceOperations}" x:Name="FinanceOperationsGrid">
<dxg:GridControl.Columns>
<dxg:GridColumn Width="20" AllowEditing="False" ShowInColumnChooser="False" AllowAutoFilter="False" />
<dxg:GridColumn Width="20" UnboundType="Boolean" AllowEditing="True" ShowInColumnChooser="False" AllowAutoFilter="False">
<dxg:GridColumn.CellTemplate>
<DataTemplate>
<dxe:CheckEdit x:Name="chkSelectedRow" IsThreeState="False" HorizontalAlignment="Center" VerticalAlignment="Center">
</dxe:CheckEdit>
</DataTemplate>
</dxg:GridColumn.CellTemplate>
</dxg:GridColumn>
<dxg:GridColumn Header="Created" AllowEditing="False" FieldName="Created" />
<dxg:GridColumn Header="Operation type" AllowEditing="False" FieldName="OperationDisplay" />
<dxg:GridColumn Header="Amount" AllowEditing="False" FieldName="Amount">
<dxg:GridColumn.EditSettings>
<dxe:SpinEditSettings MaskType="Numeric" MaskUseAsDisplayFormat="True" Mask="c2" />
</dxg:GridColumn.EditSettings>
</dxg:GridColumn>
<dxg:GridColumn Header="Description" AllowEditing="False" FieldName="Description" />
</dxg:GridControl.Columns>
<dxg:GridControl.View>
<dxg:TableView BestFitArea="Header" BestFitMode="AllRows" AutoWidth="True" ShowGroupPanel="False" ShowAutoFilterRow="True" MultiSelectMode="Row" NavigationStyle="Row"
RowStyle="{StaticResource AccountHistoryRowStyle}" DataRowTemplate="{StaticResource ChargeRowTemplate}" FocusedRow="{Binding SelectedOperation, Mode=TwoWay}">
<dxg:TableView.Resources>
<DataTemplate x:Key="{dxgt:RowIndicatorThemeKey ResourceKey=FocusedIconTemplate}">
<Canvas Width="20" Height="20">
<Rectangle Fill="LightBlue" HorizontalAlignment="Center" VerticalAlignment="Center" Width="20" Height="20" />
<Polygon Points="5,5 5,15 10,10" Fill="Blue" />
</Canvas>
</DataTemplate>
</dxg:TableView.Resources>
</dxg:TableView>
</dxg:GridControl.View>
</dxg:GridControl>