Я хочу отключить ячейку, содержащую флажок, на основании какого-либо условия. Я достиг этого, то есть флажок выглядит размытым и отключенным, но когда я нажимаю на него, флажок проверяется, то есть фактически не отключается. Ниже приведен код, который я опробовал
В xaml
<toolkit:DataGridCheckBoxColumn Header="Del?" Binding="{Binding DeleteFlag, Mode=Default}" Width="45" IsReadOnly="True" >
<toolkit:DataGridCheckBoxColumn.ElementStyle>
<Style TargetType="{x:Type CheckBox}">
<Setter Property="IsEnabled" Value="{Binding Path=SortPos, Converter={x:Static my:RowReadOnlyConverter.Instance}}" />
</Style>
</toolkit:DataGridCheckBoxColumn.ElementStyle>
</toolkit:DataGridCheckBoxColumn>
«SortPos», выделенный выше, отправляет целочисленное значение в класс «RowReadOnlyConverter», который реализует интерфейс IValueConverter
, который возвращает значение bool на основе некоторого условия. Хотя это работает нормально, флажок не отключается, как указано выше. Я также попробовал «IsHitTestVisible» вместо «IsEnabled». Кто-нибудь знает о какой-либо другой собственности, которая может работать, или о любом другом решении, кроме вышеупомянутого?
Пожалуйста, дайте мне знать, если вам нужно взглянуть на класс "RowReadOnlyConverter" или хотите сделать скриншот поведения.