ビュー モデルの CollectionViewSource ビューにバインドされたデータグリッドがあります。データグリッドには CheckBoxColumn と 3 つの TextColumn があり、それぞれがビュー内のアイテムのプロパティにバインドされています。また、個々の行のチェックボックスを非表示にするために使用したいビューアイテムに、ブールプロパティ「Enabled」があります。追加のボーナスとして、これらの行の他の 3 つの列の前景色も変更するとよいでしょう。ただし、主なことは、ユーザーが Enabled == false の行のチェックボックスをチェックできないようにすることです。
編集:以下のスティーブンとアンドリューのリンクに基づいて、以下のコードのように値コンバーターを追加しようとしました。何らかの理由で、それは機能していません。現在、1 つを除くすべてのアイテムの Enabled プロパティが false である 90 個のアイテムを持つ CollectionView ビューでテストしています。したがって、非表示のチェックボックスを含む 89 行と、表示されるチェックボックスを含む 1 行を期待しています。ただし、90 行すべてにチェックボックスが表示されています。何か案は?
<tk:DataGrid x:Name ="gridClaims"
Grid.Row="0"
AutoGenerateColumns="False"
ItemsSource="{Binding ClaimViewModels.View}"
Width="350"
HrizontalAlignment="Left">
<tk:DataGrid.Resources>
<BooleanToVisibilityConverter x:Key="boolToVis" />
</tk:DataGrid.Resources>
<tk:DataGrid.Columns>
<tk:DataGridCheckBoxColumn
CellStyle="{StaticResource SingleClickEditing}"
Binding="{Binding Path=Selected}"
Visibility="{Binding Path=Enabled, Converter={StaticResource boolToVis}}"
CanUserSort="False" />
</tk:DataGrid.Columns>