c# - 在启动时显示默认视图(用户控件)
问题描述
我正在构建一个具有仪表板、客户和工作票视图的应用程序。当我启动我的应用程序时,我想显示仪表板的视图。我试图在整个应用程序中使用 MVVM,所以我不想在 MainWindow 上设计我的仪表板。
这是我在启动时的 MainWindow。当我启动应用程序时,我希望仪表板视图默认显示在空白处。我已经为内容控件设置了屏幕的那个区域,我只是想知道如何在默认情况下显示这个特定的视图,而不必在启动后单击它的按钮。 最好的方法是什么?
解决方案
因此,据我了解,您的问题是如何在启动时自动显示“仪表板”视图。
正如@aepot 在评论中所说,您首先需要能够根据需要显示“仪表板”视图。这可以通过在 a 中创建“仪表板”视图来完成UserControl
(“客户”和“工作票”视图也会发生同样的情况)。这些 UserControls 的工作方式与 a 相同Window
(对于这个问题的关注点)。
UserControls 将作为ContentPresenter
.
现在有两种选择:
- ViewModel 中的一个
UserControl
属性(使用 通知其状态更改INotifyPropertyChanged
)绑定到ContentPresenter
. - 设置一个更复杂的解决方案(可能借助
Messenger
, 和其他实用程序模式),您可以在其中将先前的模式移动到MainWindow
代码隐藏中。
无论哪种情况,您都只需在构造函数中设置属性(第一种情况下为 ViewModel,第二种情况下为代码隐藏)。
这不是一个真正的解决方案,但我希望无论如何我都会有所帮助。
推荐阅读
- javascript - 如何用另一个数组更改对象数组的条目
- algorithm - 为什么需要考虑负循环的有向图的最短路径问题?
- flutter - Flutter + Firestore:输入'_InternalLinkedHashMap
' 不是类型 'DocumentSnapshot' 的子类型 - java - 从多个切换按钮计算总价
- ssl - Nginx:如果目录中存在有效证书,则有条件地侦听 SSL 端口
- javascript - 如何根据 React Native 中的语言更改字体大小
- android - Android ViewPager 和 TabLayout:如何在边距之间设置线性(矩形)指示器
- c# - 使用特定列执行“除外”
- python - PyLatex 设置基本示例
- r - 在 R 中使用 ggplot 创建绘图