单击用户控件中的另一个按钮时更改用户控件

Changing User Control When Another Button in a User Control is Clicked

这个答案可以在 Prism and/or Caliburn.Micro 中。在主要 shell 中更改用户控制可以通过这样的方式完成:

棱镜

_regionManager.RequestNavigate("ContentRegion", uri);

Caliburn.Micro

ActivateItem(new ViewModel());

但我的问题是,如何在单击另一个用户控件内的按钮时更改 shell 视图中显示的用户控件?

您可以在任何地方的任何命令中使用完全相同的行(至少对于 Prism)。如果您想知道如何获得 _regionManager - 只需将其作为构造函数依赖项注入即可。