c # radiobutton

private void rdAll_CheckedChanged(object sender, EventArgs e)

{ if (rdAll.Checked) { this.gvData.DataSource = GetDataSource("ALL"); } }

 

private void rdAudit_CheckedChanged(object sender, EventArgs e)

{ if (rdAudit.Checked) { this.gvData.DataSource = GetDataSource("Audit"); } }

 

private void rdNotAudit_CheckedChanged(object sender, EventArgs e)

{ if (rdNotAudit.Checked) { this.gvData.DataSource = GetDataSource("NotAudit"); } }

 

private void rdBilled_CheckedChanged(object sender, EventArgs e)

{ if (rdBilled.Checked) { this.gvData.DataSource = GetDataSource("Bill"); } }

 

private void rdUnBill_CheckedChanged(object sender, EventArgs e)

{ if (rdUnBill.Checked) { this.gvData.DataSource = GetDataSource("UnBill"); } }

 

      当窗体的RadioButton控件比价多时,那么放眼望去,代码里面到处都是CheckedChanged事件、简直有如洪水泛滥。呵呵 其实我们可以委托来改进代码、这样可以让代码看起来简洁、逻辑清晰、代码量大量减少(当然这个例子不能够证明)。下面看看是如何改进的吧: 我们把所有RadioButton控件的CheckedChanged事件用同一个事件替换。

如下所示, 代码 private void RadioBtn_CheckedChanged(object sender, EventArgs e)

{

       if (!((RadioButton)sender).Checked) return;

       string filterValue = string.Empty;

       switch (((RadioButton)sender).Tag.ToString())

         {

               case "ALL": filterValue = "ALL"; break;

               case "Audit": filterValue = "Audit"; break;

               case "NotAudit": filterValue = "NotAudit"; break;

               case "Bill": filterValue = "Bill"; break;

               case "UnBill": filterValue = "UnBill"; break;

         }

        this.gvData.DataSource = GetDataSource(filterValue);

}

 

这样处理那么就可以共用许多相同的代码(这个简单的例子没有体现)。让代码界面简明清晰不少! 文章出处:飞诺网(www.firnow.com):http://dev.firnow.com/course/3_program/cshapo/csharpjs/20100714/441757.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值