通常, 您会将其作为参数传递,如下所示:
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应用程序中的持久状态。选项包括:
- 页面值(例如,隐藏字段)
- 饼干
- 会话变量
- 应用变量
- 数据库
- 服务器端文件
- 在服务器端保留数据的其他方法,等等。



