本文整理汇总了C#中IViewModelFactory.Get方法的典型用法代码示例。如果您正苦于以下问题:C# IViewModelFactory.Get方法的具体用法?C# IViewModelFactory.Get怎么用?C# IViewModelFactory.Get使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IViewModelFactory
的用法示例。
在下文中一共展示了IViewModelFactory.Get方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ApplicationViewModel
public ApplicationViewModel(INavigationService viewNavigationService, IUserService userService, IViewModelFactory viewModelFactory)
{
ObjectValidator.IfNullThrowException(viewNavigationService, "viewNavigationService");
ObjectValidator.IfNullThrowException(userService, "userService");
ObjectValidator.IfNullThrowException(viewModelFactory, "viewModelFactory");
this.viewModelFactory = viewModelFactory;
this.ViewNavigationService = viewNavigationService;
this.Back = new RelayCommand(o => this._GoBack(), o => true);
this.Forward = new RelayCommand(o => this._GoForward(), o => true);
this.Close = new RelayCommand(o => this._Close(), o => true);
this.LeftNavigationButtonCollection = new List<DisplayableNavigationCommand>();
/*All this behaviour needs to be moved to a loaded command*/
this.ViewNavigationService.CurrentPage = viewModelFactory.Get<StartPageViewModel>();
ViewNavigationService.GetDefaultPagesByNames().Each(page => this.LeftNavigationButtonCollection.Add(
new DisplayableNavigationCommand(
page.Key,
async () => await TaskEx.Run(() => ViewNavigationService.CurrentPage = page.Value()),
() => true)));
ViewNavigationService.PageChanged += async (sender, args) =>
{
if ((ViewNavigationService.CurrentPage as ProjectDashBoardViewModel) != null)
{
await this._LoadNonDefaultPages();
}
};
}