从类文件

时间:2016-01-02 09:12:41

标签: c# asp.net winforms class

如何获取文本框的值并将其存储在类方法的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;    
}

2 个答案:

答案 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;
    }