public class FirstViewModel:ViewModelBase
{
public RelayCommand buttonClickCmd { get; set; }
public FirstViewModel()
{
buttonClickCmd = new RelayCommand(Click);
}
public void Click()
{
Debug.WriteLine("Clicked");
}
}
public class ThirdViewModel:ViewModelBase
{
public RelayCommand ClickFromFirstCmd { get; set; }
public ThirdViewModel()
{
ClickFromFirstCmd = new RelayCommand(Click);
}
public void Click()
{
FirstViewModel firstviewmodel = new FirstViewModel();
firstviewmodel.Click();
}
}
2 回答
通常,您可以在页面之间传递参数:
在
TargetPage
上覆盖OnNavigatedTo
方法,如下所示:在这种情况下,
myAge
变量的值应为19 3 = 22;但是,当导航模型提供从多个页面(不传递任何参数)到当前页面的导航时,您必须检查e.Parameter
是否null
.此外,documentation的最佳做法:
如果您熟悉MVVM模式 . 您可以从其他ViewModel调用方法 .
例如,如下所示:
您可以查看How to call functions in a main view model from other view models?了解更多详情 .