【发布时间】:2014-03-02 01:31:36
【问题描述】:
使用 VS 设计器,我创建了一个带有几个单选按钮的窗口 (Form1)。在另一个类中,我尝试创建一个在选中单选按钮时执行的语句。
public static string printRailType()
{
if (Form1.rb60E1.Checked)
{
return "60E1";
}
else if (Form1.rb49E1.Checked)
{
return "49E1";
}
else
{
return "Rail type not selected.";
}
但是,我遇到了问题,显示为错误:
非静态字段、方法或属性“RailCalc.Form1.rb60E1”需要对象引用 Form1.rb49E1 也一样。
所以,为了修复这些错误,我创建了一个 Form1 的实例:
public static string printRailType()
{
Form1 frm1 = new Form1();
if (frm1.rb60E1.Checked)
{
return "60E1";
}
else if (frm1.rb49E1.Checked)
{
return "49E1";
}
else
{
return "Rail type not selected.";
}
}
但是,即使选择了单选按钮,它仍然会显示未选择 railtype。
frm1 似乎是 Form1 类的一个实例,但它是被创建和重置的(没有选择单选按钮)。
我该如何解决这个问题?
【问题讨论】:
-
我不太会 C#,但您有一个
static方法,并且您正在尝试访问non-static字段或属性。