在WPF表单应用程序中
菜单和MenuItems位于主窗口窗体上,默认情况下我将其禁用
然后在选项卡打开,这是一个登录表单
MainWindow和Login选项卡是不同的表单,登录表单在位于MainWindow的TabControl中打开
现在我希望当我从登录表单登录时,成功登录菜单和MenuItems应该启用。
附上参考截图 enter image description here 请分享相同的代码
提前致谢
答案 0 :(得分:0)
当您从MainWindow创建新的登录选项卡时,您可以将整个MainWindow控件(this)作为参数传递给Login选项卡。
从那里,您可以从登录标签中对MainWindow内的项目进行调用。
tabPage1.Enabled = false; // this disables the controls on it
tabPage1.Visible = false; // this hides the controls on it.
下面的代码取自两个独立的Windows,第一个叫做MainWindow,它有一个按钮,打开一个我称之为Window1的新窗口。
MainWindow代码:
private void ButtonNewPage_Click(object sender, RoutedEventArgs e)
{
Window1 newWindow = new Window1(this);
this.Hide();
newWindow.Show();
}
Window1代码,在Window1构造函数中注意它采用MainWindow类型的参数:
public partial class Window1 : Window
{
private MainWindow parent;
public Window1(MainWindow parent)
{
InitializeComponent();
this.parent = parent;
}
private void ButtonOldPage_Click(object sender, RoutedEventArgs e)
{
this.Hide();
parent.Show();
}
}
*编辑显示将旧窗口传递给新窗口