У меня есть RadioButton группа:DataBind радиокнопки группы собственности
<TextBlock Height="24" Text="Update Interval (min):"/>
<RadioButton x:Name="radioButtonTimerNone" IsChecked="{Binding UpdateInterval, Converter={StaticResource updateIntervalToCheckedConverter}, Mode=TwoWay}"} Content="None" />
<RadioButton x:Name="radioButtonTimerOne" IsChecked="{Binding UpdateInterval, Converter={StaticResource updateIntervalToCheckedConverter}, Mode=TwoWay}"
Content="1" />
<RadioButton x:Name="radioButtonTimerFive" IsChecked="{Binding UpdateInterval, Converter={StaticResource updateIntervalToCheckedConverter}, Mode=TwoWay}"
Content="5" />
и свойство:
public int UpdateInterval {
get { return _updateInterval; }
set { _updateInterval = value;
onPropertyChanged("UpdateInterval");
}
}
Как привязать к радиокнопке к свойству, поэтому radioButtonTimerNone проверяется при UpdateInterval 0 , radioButtonTimerOne проверяется, когда UpdateInterval равен 1 и т. д.
Я попытался создать преобразователь, но он не определяет, какой rb устанавливается:
[ValueConversion(typeof(RadioButton), typeof(bool))]
class UpdateIntervalToCheckedConverter : System.Windows.Data.IValueConverter
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
Я ожидал, что «значение» будет радиобъектом, но оно, по-видимому, является значением UpdateInterval.
Спасибо за любые подсказки ...
Спасибо, я получил работу, используя ваше предложение. Не кажется очень чистым, хотя, чтобы передать то, что по существу является идентификатором для элемента управления, которого я хочу связать с этим свойством .... – Number8
Да, я не знаю, есть ли «более чистое» решение. Я не большой поклонник конвертеров ценности в целом, но если вам нужно использовать один, то ConverterParameter может сделать вашу жизнь намного проще! –
Это решение, которое я бы выбрал. Хотя это не очень чисто, мне в целом нравится это лучше, чем решение Андерсона о том, что на ViewModel есть куча свойств. Но, я думаю, это потому, что мне не очень нравится, когда мой ViewModel поддерживает просмотр, поэтому я могу поддерживать структурированное скинирование. – dustyburwell