C#,多个textbox相加,通过button,在一个textbox中显示结果
共82个textbox。textbox赋值:decimalt8=Convert.ToDecimal(textBox8.Text);以此类推,到第82个textbox,点击...
共82个textbox。textbox赋值:decimal t8 = Convert.ToDecimal(textBox8.Text);以此类推,到第82个textbox,点击button4,在第textbox83中显示出82个textbox相加后的值。给出完整代码。感谢各位大神!
展开
2个回答
展开全部
先标记下,直接给你写例子!稍等!
请参考:
public Form1()
{
InitializeComponent();
FlowLayoutPanel flp = new FlowLayoutPanel();
for (int i = 0; i < 82; i++)
{
flp.Controls.Add(new TextBox() { Text = i.ToString() });
}
TextBox txtSum = new TextBox();
Button btnCalc = new Button();
btnCalc.Text = "Calc";
btnCalc.Click += delegate
{
decimal dSum = 0;
foreach (Control c in flp.Controls)
{
TextBox txt = c as TextBox;
if (!(txt == null || object.ReferenceEquals(txtSum, c)))
{
dSum += Convert.ToDecimal(txt.Text);
}
}
txtSum.Text = dSum.ToString();
};
flp.Controls.Add(txtSum);
flp.Controls.Add(btnCalc);
this.Controls.Add(flp);
flp.Dock = DockStyle.Fill;
flp.AutoScroll = true;
}
欢迎追问!
更多追问追答
追问
我是在tabControl1下的tabpage3下建立的这些。button4,以及textbox文本框都已建立好了。现在就在button4的触发事件里面需要写的代码怎么写?还有,公式是:textbox84=(79-textbox83-t8-t9-.....-t82)/(79-textbox83)*79,公式实际上就是加权平均法,小弟公式写的不是很好,还望海涵。
追答
一般加权平均法你可以这样理解:(单价A*数量A+单价B*数量B)/(数量A+数量B)
其实说白了就是总金额除以总数量,你应该建立这个模型的测试程序你应该先按模型的特点创建些规则,然后就容易解决了,例如,你这样命名及排列下你的控件:
1、表示单价的控件以txtPrice1、txtPrice2命名,表示数量的控件以txtQty1、txtQty2命名;
2、应该让用户清楚知道,界面上的各个控件分别应该填写什么数据(例如可以加些Label控件),应该分好组。
PS:如果你是为了学习,以上面的方法实现这么个简单算法意义也不大,如果要说有意义,那就是你应该思考怎么样才能让设计出算法清晰、可扩展性强的代码,这样的话你应该自己认真思考下,程序设计很多时候都是要你发现规则、创建规则。。。
实在实现不了你可以把代码发给我,但你应该先清晰地表达出自己的需求。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询