当ChildWindow有一个带有ShowInTaskBar = false的ChildWindow并且所有任务栏都消失时,ShowInTaskBar错误

时间:2012-07-21 02:38:09

标签: c# wpf

我有一个Window WindowA,它将使用ChildWindowB.Owner = WindowA打开ChildWindowB。 在ChildWindowB中,我想用ChildWindowC.Owner = ChildWindowB和ChildWindowC.ShownInTaskBar = false打开ChildWindowC。

问题是当我打开ChildWindowC时,WindowA和ChildWindowB的任务栏将消失,但如果ChildWindowC关闭,则会出现任务栏。

这是WPF的错误还是我做错了什么?

(请参阅此截屏视频http://screencast.com/t/a7rMTOOpMzvN - 上传新的截屏视频)

我在https://skydrive.live.com/?cid=c6d447771583bdab&resid=C6D447771583BDAB!104&id=C6D447771583BDAB!104

上传了我的项目

1 个答案:

答案 0 :(得分:0)

我看了你的截屏视频。它看起来不像是一个bug。看起来Windows正在根据您打开的最顶层表单对alt +标签菜单中的内容进行判断调用。

  • 当您只使用ShowInTaskbar = true打开WindowA时,它会在alt +标签菜单中显示MainWindow。
  • 当您打开WindowB时,它也有ShowInTaskbar = true,它会在菜单中显示该表单的标题(ChildWindowB)。
  • 一旦您打开WindowC,ShowInTaskbar = false,Windows就会判断使用其设置,因此它会从alt +标签菜单中隐藏您的应用。

我没有参考证明这是发生了什么......只是我的观察。

我不确定为什么在其他两个窗口可见时你决定隐藏最后一个窗口。您的所有表单是否都单独显示在任务栏中?我不能在那个截屏视频中看到它。