WPF RadioButton InverseBooleanConverter не работает

У меня есть два RadioButtons, которые я связываю с логическим свойством в ViewModel. К сожалению, я получаю ошибку в конвертере, потому что параметр targetType имеет значение NULL.

Теперь я не ожидал, что параметр targetType станет равным нулю (я ожидал True или False). Однако я заметил, что свойство IsChecked RadioButton – это нулевое значение bool, поэтому это объясняет это.

Могу ли я что-то исправить в XAML или мне нужно изменить существующий конвертер решения?

Вот мой XAML:

  

Это существующий конвертер, который я использую для решения InverseBooleanConverter:

 public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if ((targetType != typeof(bool)) && (targetType != typeof(object))) { throw new InvalidOperationException("The target must be a boolean"); } return !(((value != null) && ((IConvertible)value).ToBoolean(provider))); } 

Вам нужно изменить конвертер, или, что еще лучше, использовать новый конвертер.

 [ValueConversion(typeof(bool?), typeof(bool))] public class Converter : IValueConverter { #region IValueConverter Members public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if (targetType != typeof(bool?)) { throw new InvalidOperationException("The target must be a nullable boolean"); } bool? b = (bool?)value; return b.HasValue && b.Value; } public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { return value; } #endregion }