-2

在 WPF 表单应用程序中

Menu 和 MenuItems 位于 Main Window 窗体上,默认情况下我将其禁用

然后在选项卡上打开这是一个登录表单

MainWindow 和 Login Tab 是不同的表单,登录表单在位于 MainWindow 的 TabControl 中打开

现在我希望当我从登录表单登录时,成功登录时应启用菜单和菜单项。

附上供参考的屏幕截图 在 此处输入图像描述 请共享相同的代码

提前致谢

4

1 回答 1

0

当您从 MainWindow 创建新的 Login 选项卡时,您可以将整个 MainWindow 控件 (this) 作为参数传递给 Login 选项卡。

从那里您将能够从您的登录选项卡中调用 MainWindow 内的项目。

tabPage1.Enabled = false; // this disables the controls on it
tabPage1.Visible = false; // this hides the controls on it.

下面的代码取自两个独立的窗口,第一个称为 MainWindow,它有一个按钮,可以打开一个新窗口,我称之为 Window1。

主窗口代码:

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();
    }
}

*编辑显示将旧窗口传递给新窗口

于 2018-05-11T14:10:13.110 回答