例如,我有一个按钮,可以获得3个变量:
private void Savebtn_Click(object sender, EventArgs e)
{
int A, B, C;
A = int.Parse(textBox1.Text);
B = int.Parse(textBox2.Text);
C = int.Parse(textBox3.Text);
}
我有一个类使用这些变量来计算另一个变量,例如:
class Class1
{
public static int MWCompute()
{
int MW;
MW = A * B * C;
return MW;
}
}
我想再次在我的表单中使用这个MW变量:
if (something)
{
textbox4.text = MW.ToString();
}
答案 0 :(得分:3)
如果不将A, B, C
声明为静态变量,则可以通过将这些变量作为参数传递来调用MWCompute
,并将结果输入到局部变量MW
中。然后,您可以在if
语句中应用逻辑:
private void Savebtn_Click(object sender, EventArgs e)
{
int A, B, C;
A = int.Parse(textBox1.Text);
B = int.Parse(textBox2.Text);
C = int.Parse(textBox3.Text);
int MW = Class1.MWCompute(A, B, C);
if (something)
{
textbox4.text = MW.ToString();
}
}
Class1
定义为:
class Class1 // as suggested by @Jamiec: give this class a meaningful name
{
public static int MWCompute(int A, int B, int C)
{
int MW;
MW = A * B * C;
return MW;
}
}
答案 1 :(得分:2)
通常,您可以根据需要在构造函数或方法本身中将参数传递给类。
class MWCalculator // give it a meaningful name, for starters!
{
public static int MWCompute(int A, int B, int C)
{
int MW;
MW = A * B * C;
return MW;
}
}
然后以你的形式:
private void Savebtn_Click(object sender, EventArgs e)
{
int A, B, C;
A = int.Parse(textBox1.Text);
B = int.Parse(textBox2.Text);
C = int.Parse(textBox3.Text);
var calc = new MwCalculator();
textBox4.Text = calc.MWCompute(A,B,C).ToString();
}
答案 2 :(得分:0)
您有两个与范围相关的问题:
解决方案是将A
,B
和C
移到方法之外并进入类,并使MWCompute
方法非静态。