【发布时间】:2014-10-18 23:37:34
【问题描述】:
我正在创建带有 20 个文本框的计算器 - 10 个用于输入,10 个用于输出。在创建一个方法后,我将参数(在前 10 个文本框中定义)返回给 main 方法。
要获取所有 10 个值,是否真的需要为所有 10 个或更多文本框编写代码,因为我已经开始了,或者有更聪明的方法如何传递到方法文本框参数并一次返回多个值?
更新:
正如您推荐的那样,我创建了元组列表并使用 foreach 循环遍历它们,但现在我收到错误: 错误 1 无法将类型“int”隐式转换为“string”。你能帮我指出问题出在哪里吗?
private void button1_Click(object sender, EventArgs e)
{
List<Tuple<TextBox,TextBox>> tuple1 = new List<Tuple<TextBox,TextBox>>();
tuple1.Add(Tuple.Create(textBox1, textBox2));
tuple1.Add(Tuple.Create(textBox3, textBox4));
tuple1.Add(Tuple.Create(textBox5, textBox6));
tuple1.Add(Tuple.Create(textBox7, textBox8));
foreach (Tuple<TextBox,TextBox> box in tuple1)
{
var inputBox = box.Item1;
var outputBox = box.Item2;
outputBox.Text = MethodA(Convert.ToInt32(inputBox.Text));
}
}
private int MethodA(int Parameter1)
{
int A = Parameter1;
int B = 20;
int C;
if (A == 16 && B == 20) { C = 15; } else if (A == 20 && B == 20) { C = 25; } else { C = 0; };
return C;
}
【问题讨论】:
-
1) 创建一个字典或元组列表来链接文本框对,2) 循环遍历集合,从一个文本框获取输入并将输出放入另一个文本框。从一个方法返回多个值不是好的做法(在这里也没有必要)。
-
你在使用窗口窗体吗?
-
是的,我正在使用窗口窗体。我想这个 Tuple 类对于像我这样的新手来说有点太复杂了,所以我会四处搜索看看它实际上是什么以及它做了什么,然后再回到这篇文章。谢谢你的帮助。
-
@D Stanley, @Michael 有什么想法吗,伙计们?
标签: c#