当前位置: 首页>>代码示例>>C#>>正文


C# IPresenter.Show方法代码示例

本文整理汇总了C#中IPresenter.Show方法的典型用法代码示例。如果您正苦于以下问题:C# IPresenter.Show方法的具体用法?C# IPresenter.Show怎么用?C# IPresenter.Show使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在IPresenter的用法示例。


在下文中一共展示了IPresenter.Show方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Execute

        public override bool Execute()
        {
            mPresenter = mContainer.Resolve<IPresenter>();
              string cPageException = "Cannot create page";

              var menuVmDef = new ViewModelDefinition();
              menuVmDef.AddQuality<MenuQuality>();
              menuVmDef.AddQuality<MyQuality>();
              var mainChildVmDef = new ViewModelDefinition();
              mainChildVmDef.AddQuality<MainChildQuality>();

              try
              {
            mViewModelManager.RegisterPageForViewModel<FirstViewModel, FirstPage>(mainChildVmDef);
              }
              catch (Exception e) when (e.Message.StartsWith(cPageException)) { }
              try
              {
            mViewModelManager.RegisterPageForViewModel<SecondViewModel, SecondPage>(menuVmDef);
              }
              catch (Exception e) when (e.Message.StartsWith(cPageException)) { }

              // show
              var first = mPresenter.Show<FirstViewModel>().Result;
              if (first == null || !first.NavTo)
              {
            return false;
              }
              var second = mPresenter.Show(
            def => def.HasQuality<MyQuality>())
            .Result as SecondViewModel;
              if (second == null || !second.NavTo)
              {
            return false;
              }

              // close
              second = mPresenter.Close(
            x => x.HasQuality<MyQuality>())
            .Result as SecondViewModel;
              if (second == null || !second.NavFrom)
              {
            return false;
              }
              first = mPresenter.Close<FirstViewModel>().Result;
              if (first == null || !first.NavFrom)
              {
            return false;
              }

              // TODO : find way to test alerts
              //return PathwayCore.DisplayAlertAsync("Alert", "Are you sure?", "Ok").Result;

              return true;
        }
开发者ID:UizzUW,项目名称:MVPathway,代码行数:55,代码来源:PresenterDelegationTask.cs

示例2: Register

        /// <summary>
        /// Registers the specified key.
        /// </summary>
        /// <param name="key">The key.</param>
        /// <param name="presenter">The presenter.</param>
        public void Register(string key, IPresenter presenter)
        {
            _presenters.Add(key, presenter);

            List<IViewModel> cachedViewModels;
            if (_viewModelCache.TryGetValue(key, out cachedViewModels))
            {
                cachedViewModels.ForEach(v => presenter.Show(v));
                _viewModelCache.Remove(key);
            }
        }
开发者ID:RookieOne,项目名称:RPG,代码行数:16,代码来源:DefaultPresenterFacade.cs


注:本文中的IPresenter.Show方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。