gpt4 book ai didi

c# - 如何从子窗口更改 menuStrip 菜单文本?

转载 作者:行者123 更新时间:2023-11-30 14:36:01 24 4
gpt4 key购买 nike

我需要从子窗口更改主窗口(mdi 容器)的 menuStrip 项目文本,

像这样:

File
-Login

File
-Logout

最佳答案

在主窗口添加这些:

public static MainForm Current;

public string FileLogin
{
get { return fileLoginToolStripMenuItem.Text; }
set { fileLoginToolStripMenuItem.Text = value; }
}

显然使用您为登录/注销菜单项的菜单条项设置或自动设置的名称。然后在主窗体的窗体构造函数中,设置 Current。

public MainForm()
{
InitializeComponent();
Current = this;
}

然后您可以从其他窗口/表单调用(设置值):

MainForm.Current.FileLogin = "Logout";

但比这更好的是你在你的子窗口上做一个事件,

public event Action UserLoggedIn = delegate { };

并且在 MainForm 上让 MainForm 订阅该事件,并与上述相反...

ChildForm.Current.UserLoggedIn += () => FileLogin = "Logout";

并让 child 在用户登录时使用 UserLoggedIn() 引发事件。

关于c# - 如何从子窗口更改 menuStrip 菜单文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11074948/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com