C#从另一个方法引用变量
我是 新手,我真的需要知道如何从其他方法调用/使用字符串。
例如:
public void button1_Click(object sender, EventArgs e){
string a = "help";
}
public void button2_Click(object sender, EventArgs e)
{
//this is where I need to call the string "a" value from button1_click
string b = "I need ";
string c = b + a;
}
因此,在此示例中,我需要从函数中调用函数中定义的字符串“ ”button1_Click()``button2_Click()
谢谢!!
回答:
通常, 您会将其作为参数传递,如下所示:
void Method1(){
var myString = "help";
Method2(myString);
}
void Method2(string aString)
{
var myString = "I need ";
var anotherString = myString + aString;
}
但是 ,示例中的方法是事件侦听器。您通常不直接致电他们。(我想您 可以 ,但是我从未找到一个 应该
这样做的实例。)因此,在这种特殊情况下,将值存储在类中的公共位置以供两种方法使用会更为谨慎。像这样:
string StringA { get; set; }public void button1_Click(object sender, EventArgs e)
{
StringA = "help";
}
public void button2_Click(object sender, EventArgs e)
{
string b = "I need ";
string c = b + StringA;
}
但是请注意,这在ASP.NET中的行为将非常不同。因此,如果这就是您正在使用的内容,那么您可能希望将其更进一步。其行为不同的原因是服务器端是“无状态的”。因此,来自客户端的每个按钮单击都将导致该类的全新实例。因此,在第二个按钮单击事件处理程序中使用它时,不会在第一个按钮单击事件处理程序中设置该类级成员。
在这种情况下,您将需要查看Web应用程序中的持久状态。选项包括:
- 页面值(例如,隐藏字段)
- 饼干
- 会话变量
- 应用变量
- 数据库
- 服务器端文件
- 在服务器端保留数据的其他方法,等等。
以上是 C#从另一个方法引用变量 的全部内容, 来源链接: utcz.com/qa/426256.html