radioButton类的CheckedChanged事件

c#winform,在form里面创建了4个radioButton。分别是radioButton1、radioButton2、radioButton3、radioButt... c# winform,在form里面创建了4个radioButton。分别是radioButton1、radioButton2、radioButton3、radioButton4。在分别写CheckedChanged事件的处理方法的时候发现radioButton2的CheckedChanged事件会调用radioButton1的CheckedChanged事件处理方法和radioButton2的CheckedChanged事件处理方法。也就说他调用了两次处理方法。必须得用if (radioButton2.Checked)判断才能解决这个问题。我想问问大家为什么他会触发两次而不是一次或者是更多次事件。
代码如下:
private void button1_Click(object sender, EventArgs e)
{
string display ="一共选择了" +flag + "次";
MessageBox.Show(display);
}
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
flag++;
}
private void radioButton2_CheckedChanged(object sender, EventArgs e)
{
flag++;
}
private void radioButton3_CheckedChanged(object sender, EventArgs e)
{
flag++;
}
private void radioButton4_CheckedChanged(object sender, EventArgs e)
{
flag++;
}
这段是错误的,当我依次选择了radioButton1和radioButton2时flag的值却为3。
我是用vs2005的c#.net,一个groupbox在所有的radiobutton下,我试了好几次都不行。值都不对。。
展开
 我来答
497907677
推荐于2018-04-09
知道答主
回答量:47
采纳率:0%
帮助的人:0
展开全部
如果你把所有radioButton设为同一组的话 就是只能单选的话 那结果就是3,因为radioButton1执行了两次radioButton2执行了1次
首先 是你用的事件 有关,CheckedChanged事件,是当这个控件的值改变的时候,就会触发,窗体刚加载的时候,控件初始化为选中的时候,那个事件就会激活. 当你在选择另一个控件的时候,第一次选择的那个控件有选中变为未选中,而选中的控件有未选中变为选中,所以他们都触发了自己的CheckedChanged事件.
Storm代理
2023-07-25 广告
StormProxies是一家可靠的代理服务提供商,提供原生IP(住宅原生IP)和高匿名代理服务。以下是关于StormProxies的原生IP服务的一些信息:1. 住宅原生IP:StormProxies提供的住宅原生IP是指从真实的家庭或企... 点击进入详情页
本回答由Storm代理提供
亓昂熙5V
2008-05-29 · TA获得超过231个赞
知道小有建树答主
回答量:335
采纳率:0%
帮助的人:0
展开全部
这个问题的原因有很多种:

首先 是你用的事件 有关,CheckedChanged事件,是当这个控件的值改变的时候,就会触发,窗体刚加载的时候,控件初始化为选中的时候,那个事件就会激活. 当你在选择另一个控件的时候,第一次选择的那个控件有选中变为未选中,而选中的控件有未选中变为选中,所以他们都触发了自己的CheckedChanged事件.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tiancao222
2008-05-28 · TA获得超过618个赞
知道小有建树答主
回答量:338
采纳率:0%
帮助的人:318万
展开全部
我试了下,在我这里是好着呢。结果是2,不是3.
估计是你在radioButton1选中后,你再选择radioButton2时,radioButton1被自动“归位”,因此又执行了一次CheckedChanged。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
憨急
2008-05-28 · TA获得超过754个赞
知道答主
回答量:141
采纳率:0%
帮助的人:102万
展开全部
如果你把所有radioButton设为同一组的话 就是只能单选的话 那结果就是3,因为radioButton1执行了两次radioButton2执行了1次

如果radioButton不是同一组的话 那结果就是2没错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式