Tengo algunas RadioButtons en mi XAML ...¿Cómo puedo manejar mejor los botones de radio 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>
Y puede manejar sus eventos de clic en el código de Visual Basic. Esto funciona ...
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
Pero me gustaría mejorarlo. Este código falla ...
<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
En mi XAML consigo un Subrayado azul ondulada en los Command = atributos y este consejo ...
'CommandValueSerializer' ValueSerializer cannot convert from 'System.String'.
En mi VB consigo un subrayado ondulado verde en la línea Select Case y esta advertencia ...
Runtime errors might occur when converting 'System.Windows.Input.ICommand' to 'String'.
Sería aún mejor utilizar comandos de tipo Enum con Intellisense completo y errores de compilación en lugar de errores de tiempo de ejecución en caso de errores tipográficos. ¿Cómo puedo mejorar esto?
Lo usé, pero cuando cargo mi página, no puedo seleccionar ninguna de ellas. ¿Hay alguna forma de habilitar la selección de RadioButtons? – paradisonoir
No estoy seguro de cuál podría ser el problema, simplemente ejecuté esta muestra y pude seleccionar los botones de radio de forma correcta. –
Si todos los botones de radio están deshabilitados, entonces supongo que los enlaces de comando no pudieron, er, obligar. –