1

Visual C# 2008 速成版。窗口形式;两个文本框和一个按钮。在 cmdEnter_Click 事件中,我想检查 ValidateForm 类中的布尔变量是否为真(处理文本框是否被清除)。

private void cmdEnter_Click(object sender, EventArgs e)
{
     ValidateForm();
     txtName.Clear();
     txtAge.Clear();
}

public void ValidateForm()
{
     bool bValidName = ValidateName();
     bool bValidAge = ValidateAge();
     if (bValidName && bValidAge)
          MessageBox.Show("Entry will be added");               
     else
          MessageBox.Show("Please enter valid data");
}

我将 ValidateFrom() 修饰符从 private 更改为 public,然后将 public 放在布尔变量的前面,以便我可以访问它们,但我收到“Invalid expression term public”错误。我的理解是,如果变量是公共的并且在公共类中,我应该能够从任何地方访问它?

4

1 回答 1

3

在方法内声明的变量仅在该方法内可用,无论该类是否是公共的。

如果要从公共类外部访问变量,请使用类级别变量。在您的方法之外声明它。公共/私有修饰符在方法内无效,它们需要在类级别使用。

public bool bValidName;

public void ValidateForm()
{
     bValidName = ValidateName();
     ...

根据您想要执行的操作,您可能希望将其设为属性,并且可以在 get/set 上使用修饰符。

public bool bValidName { get; set; }
于 2013-03-01T19:43:33.107 回答