问题是我有一个“登录窗口”和一个“主窗口”,在按下登录按钮或“访客”按钮后调用
如果按登录按钮,整个系统都会出来,如果我按访客按钮,一个选项卡应该消失或被阻止或其他什么。
private void visitant(object sender, EventArgs e)
{
mainwindow menu = new mainwindow();
menu.Show();
//mainwindow.tabPage1.Enabled = false; //attempt1
//mainwindow.tabPage1.Visible = false; //attempt1
//System.Windows.Forms.tabPage1.Enabled = false;//attempt2
//System.Windows.Forms.tabPage1.Visible = false;//attempt2
this.Hide();
}
我使用 attempts1 时遇到的错误是
错误 1“System.mainwindow.tabPage1”由于其保护级别而无法访问”
错误 2 非静态字段、方法或属性“System.mainwindow.tabPage1”需要对象引用
我使用尝试2得到的结果是
错误 1 命名空间“System.Windows.Forms”中不存在类型或命名空间名称“tabPage1”(是否缺少程序集引用?)
正如您可能已经猜到“tabPage1”是我在按下访客按钮时需要隐藏的选项卡。
我想不出更多细节,我会提供任何额外信息
提前致谢。
默认情况下,添加到表单的控件不公开可见。除了这个细节之外,您的“attempt1”代码将是正确的代码。
(EDIT:要以这种方式修复它,请更改“Modifiers”属性tabPage1
to be Public
or Internal
- 这允许其他类从表单外部查看这些控件。)
然而,比使这些控件可见更好的方法是在您的应用程序上创建一个新的公共方法。mainwindow
类,像这样:
public void HideTab()
{
tabPage1.Enabled = false;
tabPage1.Visible = false;
}
然后,在示例代码中,在创建/显示表单后调用新方法:
mainwindow menu = new mainwindow();
menu.Show();
menu.HideTab();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)