@人人都有一个梦想,每天都在圆这个梦...... <-- 记录学习中点滴,一步步成长 ^o^ -->

c# 使用可变个数的参数,可用来累计数量不定的输入项(比如TextBox内容)的值

c# 使用可变个数的参数有些情况下挺有用的。

最简单的例子比如累计表单(或textBox控件)数值,而累加项的个数不确定,或者说

为了保证更好的扩展性,在输入项增加时,方法依然适用。

例:

页面上列出6个TextBox,需要求和。

txtBox1,

txtBox2,

txtBox3,

txtBox4,

txtBox5,

txtBoxSumPay  //显示合计,根据情况或许需要设为只读

 

1 //C#中的可变参数使用
2  //如果不用params 关键字,则参数调用的时候需要使用 new object[] {arg1, arg2}
3  public double SumPay(params int[] args) //参数可能为其他类型,根据业务需要添加
4  {
5 double sum = 0;
6 foreach (string arg in args)
7 {
8 if (!string.IsNullOrEmpty(arg))
9 sum += double.Parse(arg);
10 }
11 return sum;
12 }

 

 

 

在需要使用 求和 功能的时候

可用如下方法调用:

 

1 ...
2 ...
3  double sumpay = SumPay(txtBox1.Text, txtBox2.Text, txtBox3.Text, txtBox4.Text, txtBox5.Text);
4 if(sumpay!=0) //这里是想在textBox的值都为空时,或0时,总和不再显示
5   lblUcPayTotal.Text = sumpay.ToString();
6 ...
7 ...
8

 

 

//另外如果要想实现 每填写或修改 textBox项目的值后

//总和栏位能同步更新,可以添加 textBox_TextChanged事件到所有需要累加的textBox 空间上

//遍历所有的TextBox的textchanged事件,有些技巧,见另一篇随笔

posted @ 2010-11-22 10:22  有你的城市  阅读(1764)  评论(0编辑  收藏  举报