如何获取文本框的值并将其存储在类方法的FORM.cs之外,以便我可以在标签上显示该值? 它仅适用于测试应用程序。我想拥有独立于GUI的代码。
以下是我的尝试:
Form.cs
private void button4_Click(object sender, EventArgs e)
{
cueTextBox2.Text = value;
Calling cal = new Calling();
cal.setntags(value);
}
Calling.cs
public string setntags(string value)
{
value = tag1;
MessageBox.Show("done");
return tag1;
}
答案 0 :(得分:1)
在setintags
中,您要为value
分配tag
的值。因为您传递了button4_Click.value
的副本,所以它不会在函数结束时更改。如果您想更改value
的值,则需要执行以下操作:
public string setntags(ref string value)
{
MessageBox.Show("Done.");
return value = tag1;
}
并称之为cal.setntags(ref value)
);
这里的关键是'ref'关键字,它允许您通过引用传递变量,这允许您在函数中更改其值。
但是,如果您想将value
的值存储在tag1
中,则需要执行以下操作:
public string setntags(string value)
{
MessageBox.Show("Done");
return tag1 = value;
}
赋值将赋值运算符的左侧指定为右侧的值。
答案 1 :(得分:1)
这是答案......我发现了什么
private void button4_Click(object sender, EventArgs e)
{
int retVal;
string local;
Calling cal = new Calling();
local = cueTextBox2.Text;
retVal = cal.setNtagsDummy(ref local);
if (retVal == 0)
{
label13.Text = cueTextBox2.Text;
}
并在课程文件中
public int setNtagsDummy(ref string setndum)
{
int retVal;
Console.WriteLine("done");
setndum = "";
retVal 0;
}