WPF RadioButton控件 一定要选一个

WPF RadioButton控件 一定要选一个

RadioButton 控件用于提供多个选项供用户选择,其中只能选择一个。RadioButton 通常用于一组互斥的选项,如性别选择或支付方式选择,如判断题选择选项。

1
2
3
4
5
6
7
8
<StackPanel>
     
    <Label>请选择你的性别:</Label>
     
    <RadioButton >男</RadioButton>
    <RadioButton>女</RadioButton>
 
</StackPanel>

  

按F5运行,点一点,可以看到只能选择一项,不能选择多项。

添加一个功能吧。添加一个button,点击后显示选择的选项。

首先完善一下XAML,将RADIOBUTTON加上名称,添加一个button。

1
2
3
4
5
6
7
8
9
10
11
<StackPanel>
     
    <Label>请选择你的性别:</Label>
     
    <!--给RadioButton 加上名称-->
    <RadioButton x:Name="radio1">男</RadioButton>
    <RadioButton x:Name="radio2">女</RadioButton>
 
    <Button Click="Button_Click" >提交</Button>
 
</StackPanel>

然后完善buttonc-click代码,双击设计器上的button按钮就能进入CS代码文件。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
private void Button_Click(object sender, RoutedEventArgs e)
{
    // 两个都没选
    if ((radio1.IsChecked == false) && (radio2.IsChecked == false))
    {
        MessageBox.Show("没有选择性别,请选择一个!");
    }
 
    // 选择了radio1
    if(radio1.IsChecked == true){
        MessageBox.Show("选择了radio1,radio1的文本内容为:"+radio1.Content);
    }
 
    // 选择了radio2
    if (radio2.IsChecked == true)
    {
        MessageBox.Show("选择了radio2,radio2的文本内容为:"+radio2.Content);
    }
}

 

按F5,点一点试试。

_______________________________________

做个例子吧。

和上面一样,只不过完善了一下,调整了样式。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<StackPanel>
    <!--Label不能直接换行,可以嵌套一个TextBlock,也可以直接用TextBlock-->
    <Label>
        <TextBlock Text="判断题:一杯水的温度是100℃,另一杯的温度是20℃,两杯倒在一起,水的温度将是120℃。"
                   TextWrapping="Wrap"
                   Margin="10"
                   />
    </Label>
     
    <!--设置控件边界增加10点,看起来不拥挤-->
    <RadioButton x:Name="radioTrue"
                 Content="正确"
                 Margin="10"
                 />
    <RadioButton x:Name="radioFalse" 
                 Content="错误"
                 Margin="10"
                 />
 
    <Button Click="Button_Click"
            Content="提交"
            Margin="10"
            Width="100"
            Height="30"
            />
 
</StackPanel>

 

 

 完善CS文件源代码。

1
2
3
4
5
6
7
8
9
10
11
private void Submit(object sender, RoutedEventArgs e)
{
    if ((radioTrue.IsChecked == false) && (radioFalse.IsChecked == false))
        MessageBox.Show("没有选择,请选一个");
 
    if (radioTrue.IsChecked == true)
        MessageBox.Show("WHAT HELL,认真看一下题!");
 
    if (radioFalse.IsChecked == true)
        MessageBox.Show("答对了!");
}

 

按一下F5试试。

 

posted @   Surfnet  阅读(181)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示