我目前有一些东西,我想通过ref传递textbox.text.我不想传递整个文本框,我希望函数更改文本以及返回其他变量.
public int function(int a, int b, string text)
{
//do something
if (a + b > 50)
{
text = "Omg its bigger than 50!";
}
return (a + b);
}
Run Code Online (Sandbox Code Playgroud)
有没有办法通过ref传递Textbox.text并在函数内部更改它?
您不能通过ref传递属性,只能传递字段或变量.
来自MSDN:
属性不是变量.它们实际上是方法,因此不能作为ref参数传递.
你必须使用一个中间变量:
string tmp = textBox.Text;
int x = function(1, 2, ref tmp);
textBox.Text = tmp;
Run Code Online (Sandbox Code Playgroud)