我有一些單選按鈕在我的XAML ...如何最好地處理WPF單選按鈕?
<StackPanel>
<RadioButton Name="RadioButton1" GroupName="Buttons" Click="ButtonsChecked" IsChecked="True">One</RadioButton>
<RadioButton Name="RadioButton2" GroupName="Buttons" Click="ButtonsChecked">Two</RadioButton>
<RadioButton Name="RadioButton3" GroupName="Buttons" Click="ButtonsChecked">Three</RadioButton>
</StackPanel>
我可以處理他們的點擊事件,在Visual Basic代碼。這工程...
Private Sub ButtonsChecked(ByVal sender As System.Object, _ ByVal e As System.Windows.RoutedEventArgs) Select Case CType(sender, RadioButton).Name Case "RadioButton1" 'Do something one Exit Select Case "RadioButton2" 'Do something two Exit Select Case "RadioButton3" 'Do something three Exit Select End Select End Sub
但是,我想改善它。此代碼失敗......
<StackPanel>
<RadioButton Name="RadioButton1" GroupName="Buttons" Click="ButtonsChecked" Command="one" IsChecked="True">One</RadioButton>
<RadioButton Name="RadioButton2" GroupName="Buttons" Click="ButtonsChecked" Command="two">Two</RadioButton>
<RadioButton Name="RadioButton3" GroupName="Buttons" Click="ButtonsChecked" Command="three">Three</RadioButton>
</StackPanel>
Private Sub ButtonsChecked(ByVal sender As System.Object, _ ByVal e As System.Windows.RoutedEventArgs) Select Case CType(sender, RadioButton).Command Case "one" 'Do something one Exit Select Case "two" 'Do something two Exit Select Case "three" 'Do something three Exit Select End Select End Sub
在我的XAML中,我得到一個藍色的命令=屬性和這個技巧波浪下劃線...
'CommandValueSerializer' ValueSerializer cannot convert from 'System.String'.
在我的VB我得到一個綠色波浪下劃線上選擇案例線和此警告...
Runtime errors might occur when converting 'System.Windows.Input.ICommand' to 'String'.
更好的辦法是將Enum類型的命令與完整的Intellisense一起使用,並在出現錯誤時編譯錯誤而不是運行時錯誤。我該如何改進?
我用過這個,但是當我加載我的頁面時,我無法選擇它們中的任何一個。無論如何可以選擇RadioButtons嗎? – paradisonoir 2009-07-15 15:51:02