我想为Windows Forms创建一个函数,如:
private void do(textBox_name, string text)
{
textBox_name.Text=text.toString();
}
该函数应将textBox
的名称作为参数,然后将文本写入右侧textBox。
但我不知道如何正确发送应该使用哪个textBox。
此时我已经在“if statement”中完成了它,但是添加新元素会一次又一次地编写脚本,因为我必须编写
textBox1.Text=text.toString();
然后textBox2.Text=text.toString();
每个需要花费大量时间的textBox。另外,我知道我可以用开关来做,像这样:
switch(ID)
case 1:
textBox1.Text=text.toString();
break;
case 2:
textBox2.Text=text.toString();
但我想有办法为每个textBox做一个函数。
答案 0 :(得分:1)
我有一个问题 - 为什么要在ToString()
上调用string
方法?这是完全没必要的。
您的功能应如下所示:
private void do(TextBox tb, string text)
{
tb.Text = text;
}
如果您使用double
,那么它会略有不同:
private void do(TextBox tb, double number) //use meaningful names, "text" for double is poor choice
{
tb.Text = number.ToString();
}
答案 1 :(得分:0)
再次欢迎。问题已经解决,这很容易,所以我真的很尴尬我多久寻找解决问题。我不知道我可以发送到TextBox的函数参数。 现在看起来像
private void write(TextBox tbox, string text)
{
tbox.Text=text;
}