|
|
1
2
请问您是如何允许用户在视图之间来回切换的?是组合键吗?鼠标点击? 这并不是在回答你的问题本身,但我的建议是,这听起来像是一个标签控件的完美场景。使用WPF,它不一定要看起来像选项卡控件。 如果使用TabControl,则可以使用TabControl中的SelectionChanged事件通知后台线程停止,并可以卸载任何需要卸载的内容。 根据TabControl的使用方式,UI可以进行某种程度的虚拟化。这意味着,每当一个选项卡被取消选中时,该选项卡的所有UI都会被销毁,并在下次选中时重新创建。如果使用 MVVM 或者PresentationModel模式,并将ViewModels加载为TabControl的项,并将DataTemplates用于视图。但是,如果只是将TabItems放入TabControl中,并在其中包含控件,它将不会以这种方式运行。 就图案而言,我绝对推荐 MVVM .可能需要一点时间才能理解它,但没有它我永远不会做WPF。如果你需要更多的资源或例子,请告诉我。 编辑: 我重读了你的问题,注意到你可能需要另一种导航方式。如果您有一些视图需要根据用户操作转换到其他视图,并且不希望所有视图都显示给用户,以便用户可以选择要查看的视图(就像TabControl一样),那么您可能需要查看这些视图 WPF Navigation .导航基本上是MS与WPF一起添加的东西,允许WPF应用中的浏览器风格导航。 This MSDN article 应该是这方面的好资源。 |
|
|
2
1
这听起来像是一个非常适合复合WPF(Prism)的问题。可以将主区域定义为区域,并使用SingleActiveRegion一次显示一个视图。如果创建自己的区域适配器,则可以在活动视图更改时进行所有维护。 此外,添加新视图不需要更改宿主视图的代码。这将允许您将来在单独的程序集中部署其他视图。。。 |
|
|
A B · C#Excel自动调整列避免长文本时出错 1 年前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 1 年前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |