我想从不是View的类访问我的ViewModel。如果我做以下情况可以吗?这打破了这种模式吗?
namespace MyApp
{
public class GameView
{
protected new GameViewModel ViewModel
{
get { return (GameViewModel)base.ViewModel; }
}
}
}
// Derived class
namespace MyApp
{
public class InAppPurchase: GameView
{
public void BuyCoins()
{
ViewModel.PurchasedCoins += ViewModel.CoinsForSale;
}
}
}
答案 0 :(得分:0)
如果您想从您想要的任何地方访问ViewModel,您可能希望发送消息(MvxMessage)并在ViewModel中处理它们(使用IMessenger发布/订阅)。这是在ViewModel或ViewModels与Mvvm模式中的服务之类的其他组件之间进行通信的正确方法。