【发布时间】:2018-03-02 18:42:26
【问题描述】:
我有一个工具条和一个状态条,我切换了它们的 Visible 属性。 “关闭”时,表单最小化到系统托盘。
private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
{
e.Cancel = true;
this.WindowState = FormWindowState.Minimized;
this.Hide();
}
我从 NotifyIcon 的 ContextMenu 关闭应用程序,我想保存工具条 (statusstrip) 的可见性。 问题是当表单“关闭”时它们总是错误的。 当它们真的不可见或表单被隐藏时可以区分
【问题讨论】:
-
最好的办法是创建一个字段,如
ToolstripsVisibleWhenShwon,并在用户指示应显示/隐藏条带时设置并清除该变量。然后它将清楚地代表您正在跟踪的状态。 -
Visible 属性有点不寻常,当你读回它时,你会得到控件的实际状态。隐藏窗口时总是 false。你只需要保留一个额外的变量。或者在分配 Visible 属性时设置应用设置。