我有一個單選按鈕組:數據綁定單選按鈕組屬性
<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 ,當UpdateInterval是1時檢查radioButtonTimerOne等。
我試圖創建一個轉換器,但它不能識別正在設置哪個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的值。
感謝您的任何提示...
謝謝,我已經得到它使用您的建議工作。雖然看起來不是很乾淨,但必須通過本質上是我想要綁定到屬性的控制ID。 – Number8 2009-09-13 23:12:15
是的,我不知道是否有一個「更清潔」的解決方案。我並不是一般價值轉換者的忠實粉絲,但是如果你必須使用一個,那麼ConverterParameter可以讓你的生活變得更輕鬆! – 2009-09-13 23:35:51
這是我選擇的解決方案。雖然它不是很乾淨,但我一般都比Anderson在ViewModel上有很多屬性的解決方案更好。但是,我想這是因爲我不太喜歡讓我的ViewModel迎合視圖,因此我可以支持結構化蒙皮。 – dustyburwell 2009-09-14 05:05:39