XAML RadioButton Code Example

The <RadioButton> element in XAML is used to create a radio button control in a WPF app.
This article has moved here - Working with a WPF Radio Button Control
The following code example creates a radio button and sets the name, height and width of a RadioButton control. The code also sets the horizontal alignment to left and the vertical alignment to top.
  1. <RadioButton Margin="10,10,0,13" Name="RadioButton1" HorizontalAlignment="Left" VerticalAlignment="Top" Width="150" Height="15" Backgroun      d="Yellow " Foreground="Blue">  
  2.       C# Corner  
  3. </RadioButton>  
The RadioButton looks as in following:

XAML RadioButton
Figure 1. RadioButton 

The GroupName property of a RadioButton assigns a RadioButton to a group. Only one RadioButton can be in the selected states at once and by selecting a new RadioButton unselects the previous selected RadioButton.

The following code assigns four RadioButton controls to a group called MCSites.
  1. <RadioButton Margin="10,5,0,0" GroupName="MCSites" Background="Yellow" Foreground="Blue" >  
  2.     C# Corner  
  3. </RadioButton>  
  4. <RadioButton Margin="10,5,0,0" GroupName="MCSites" Background="Yellow" Foreground="Orange" >  
  5.     VB.NET Heaven  
  6. </RadioButton>  
  7. <RadioButton Margin="10,5,0,0" GroupName="MCSites" Background="Yellow" Foreground="Green" >  
  8.     Longhorn Corner  
  9. </RadioButton>  
  10. <RadioButton Margin="10,5,0,0" GroupName="MCSites" Background="Yellow" Foreground="Purple" >  
  11.     Mindcracker  
  12. </RadioButton>   
The output looks as in Figure 2. If you select one RadioButton, the previous RadioButton will be unselected.

XAML RadioButton
Figure 2

RadioButton control has Checked event as default event and raised when you check a radio button. The following code snippet adds the event handler.
  1. <RadioButton Name="Btn1" Margin="10,5,0,0" GroupName="MCSites"   
  2.    Background="Yellow" Foreground="Blue" Checked="Btn1_Checked">  
The following checked event handler sets the foreground and background color of the checked RadioButton and sets black and white for the rest of them.
  1. private void Btn1_Checked(object sender, RoutedEventArgs e)  
  2. {  
  3.     Btn1.Foreground = Brushes.Blue;  
  4.     Btn1.Background = Brushes.Yellow;  
  5.     Btn2.Foreground = Brushes.Black;  
  6.     Btn2.Background = Brushes.White;  
  7.     Btn3.Foreground = Brushes.Black;  
  8.     Btn3.Background = Brushes.White;  
  9.     Btn4.Foreground = Brushes.Black;  
  10.     Btn4.Background = Brushes.White;  
  11. }  
New RadioButton group looks as in Figure 3.

XAML RadioButton
Figure 3

The IsChecked property of RadioButton represents whether or not a RadioButton is checked. The following code snippet on a button click event handler finds the text of the selected RadioButton in a group.
  1. private void button1_Click(object sender, RoutedEventArgs e)  
  2. {  
  3.    if( Btn1.IsChecked == true)  
  4.        MessageBox.Show(Btn1.Content.ToString());  
  5.    else if (Btn2.IsChecked == true)  
  6.        MessageBox.Show(Btn2.Content.ToString());  
  7.    else if (Btn3.IsChecked == true)  
  8.        MessageBox.Show(Btn3.Content.ToString());  
  9.    else  
  10.        MessageBox.Show(Btn4.Content.ToString());  
  11. }  
This article has moved here: Working with a WPF Radio Button Control

Founded in 2003, Mindcracker is the authority in custom software development and innovation. We put best practices into action. We deliver solutions based on consumer and industry analysis.