zoukankan      html  css  js  c++  java
  • WinForm的RadioButton使用小技巧

    http://www.cnblogs.com/sjrhero/articles/1883155.html

    当多个RadioButton同在一个容器里面的时候,多半的操作都是要得到其中一个的值这个时候我们就没有必要去为每一个RadioButton写一个CheckedChange事件,这样会写很多代码,太累了。这个时候我们就可以借住委托来添加一个新的事件,用新的事件代替所有RadioButton的CheckedChange事件。我要实现的要求就是:当选择中任意一个RadioButton的时候Label17就变成我选择的RadioButton的Text值

    新事件代码如下:

    //RadioButton新事件
    public void radioBtn_CheckedChange(object sender, EventArgs e)
    {
    if (!((RadioButton)sender).Checked)
    {
    return;
    }
    string rechargeMoney = string.Empty;
    switch (((RadioButton)sender).Text.ToString())
    {
    case "10":
    rechargeMoney = "10";
    this.lbl_money_tip.Text = rechargeMoney;
    break;
    case "20":
    rechargeMoney = "20";
    this.lbl_money_tip.Text = rechargeMoney;
    break;
    case "30":
    rechargeMoney = "30";
    this.lbl_money_tip.Text = rechargeMoney;
    break;
    case "40":
    rechargeMoney = "40";
    this.lbl_money_tip.Text = rechargeMoney;
    break;
    case "50":
    rechargeMoney = "50";
    this.lbl_money_tip.Text = rechargeMoney;
    break;
    case "100":
    rechargeMoney = "100";
    this.lbl_money_tip.Text = rechargeMoney;
    break;
    default:
    break;
    }
    }

     如何使用这个事件呢?有两种方法

    1、在VS2008中依次选中每一个RadioButton右击--“属性”在属性中找到CheckedChange事件,为其指定为新写的事件。如下图:

    2、在初始化窗体的时候添加如下代码:

    public StartPage()
    {
    InitializeComponent();
    this.radio_Money_10.CheckedChanged += new EventHandler(this.radioBtn_CheckedChange);
    this.radio_Money_20.CheckedChanged += new EventHandler(this.radioBtn_CheckedChange);
    this.radio_Money_30.CheckedChanged += new EventHandler(this.radioBtn_CheckedChange);
    this.radio_Money_40.CheckedChanged += new EventHandler(this.radioBtn_CheckedChange);
    this.radio_Money_50.CheckedChanged += new EventHandler(this.radioBtn_CheckedChange);
    this.radio_Money_100.CheckedChanged += new EventHandler(this.radioBtn_CheckedChange);
    }

    到此这个简单的方法就完成了,让我少写了不少的垃圾代码;可以举一反三。比如复选框被选中,传出去一个值等等。这也让我对委托有了更清晰了理解

  • 相关阅读:
    中文词频统计
    复合数据类型,英文词频统计
    字符串、文件操作和英文词频统计预处理
    大数据应用期末总评Hadoop综合大作业
    hadoop平台上HDFS和MAPREDUCE的功能、工作原理和工作过程
    hadoop平台上HDFS和MAPREDUCE的功能、工作原理和工作过程
    分布式文件系统HDFS练习
    安装关系型数据库MySQL和大数据处理框架Hadoop
    爬虫综合大作业
    爬取全部的校园新闻
  • 原文地址:https://www.cnblogs.com/Echo529/p/6382374.html
Copyright © 2011-2022 走看看