Проблема в том, что ваша привязка недействительна. Если вы используете такой инструмент, как Sn oop Wpf или живое визуальное дерево в Visual Studio, вы увидите, что привязка не работает.
Причина в том, что ваша RadioButton
находится внутри шаблона, который имеет контекст данных, к которым привязана сетка, а не DataGridRow
. Если вы обновите свою привязку следующим образом, она будет работать:
IsChecked="{Binding RelativeSource={RelativeSource AncestorType={x:Type DataGridRow}}, Path=IsSelected, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
По сути, я сказал привязке искать IsSelected
относительно DataGridRow
выше в визуальном дереве.
Другая проблема заключается в том, что, поскольку вы используете RadioButton
, его нельзя отменить при нажатии на него. Если вы хотите, чтобы он действовал как тумблер, вы должны использовать вместо него CheckBox
.
Надеюсь, это поможет.