【问题标题】:WPF: Maintaining states by implementing tabs with navigation windows?WPF:通过实现带有导航窗口的选项卡来维护状态?
【发布时间】:2011-03-17 16:28:06
【问题描述】:

我正在 C# WPF 中创建一个应用程序,该应用程序由一个顶级的 NavigationWindow 和几个页面组成,我出于项目的目的在这些页面之间导航。此时,我想通过添加程序的第二个“状态”来扩展应用程序的功能。

我希望它是这样工作的:本质上,该程序是一个数据收集应用程序。目前,它显示数据库 A 的相关 UI 信息,并允许您专门为该数据库收集数据。我想通过添加第二组 UI 元素来扩展软件,这些元素收集数据库 B 的不同数据,并且我想使用顶部的选项卡在它们之间导航(因此使用 tabcontrol 和 tabitems)。

我坚持的部分是维护状态部分:例如,如果我在数据库 A 的选项卡上,我可以通过日期选择屏幕进入实际收集屏幕,但如果我单击在数据库 B 的选项卡上,那么它仍然会回到日期选择屏幕,因为我还没有在那里做任何事情(基本上就像在每个选项卡中同时运行 2 个程序)。

我尝试查看是否可以将软件的根元素从 NavigationWindow 更改为在 tabitems 内包含 NavigationWindow 的 Page(因为只有 Page 实现了 tabcontrol),但我还没有弄清楚如何做到这一点(如果甚至可以完成)。有没有更好的方法来做到这一点?

【问题讨论】:

    标签: c# wpf tabcontrol navigationwindow


    【解决方案1】:

    我看到有两种方法可以做到这一点:

    1. 将状态信息保留在选项卡内容之外。因此,诸如 CurrentStep 之类的项目将在比 TabControl 的内容更高的级别上进行跟踪

    2. 或者制作一个假标签控件。切换选项卡并没有真正改变任何东西,而只是改变了 ViewModel 中确定连接的属性。

    顺便说一句,为什么不考虑使用下拉菜单来指定数据库而不是选项卡控件?

    【讨论】:

      猜你喜欢
      • 2013-05-25
      • 1970-01-01
      • 1970-01-01
      • 2019-04-20
      • 2016-02-16
      • 2012-01-22
      • 1970-01-01
      • 2016-10-22
      • 1970-01-01
      相关资源
      最近更新 更多