Esempio n. 1
0
        private string ExecuteCreateCaseCommand()
        {
            //展开创建案例界面
            EditCaseNavigationHelper.SetEditCaseViewStatus(true);

            return("打开新建案例");
        }
Esempio n. 2
0
        //主界面导航回调
        private void MainNavigationCallback(NormalNavigationArgs args)
        {
            /*
             * TODO
             * 由于设备主页是整个程序共享的
             * 所以在跳转的时候,需要先判断缓存中是否有对应Token的缓存界面
             * 没有则创建新的设备主页
             *
             */
            UcViewBase targetView = null;

            if (args.IsBackArgs)
            {
                //返回前一个界面
                targetView = args.Parameter as UcViewBase;
            }
            else
            {
                /*
                 * TODO
                 * 由于设备是多路提取,所以设备主页以及附属内容需要缓存
                 * 当案例编辑界面展开,此时的所有导航都需要折叠案例编辑界面
                 *
                 */
                if (EditCaseNavigationHelper.CurEditViewOpenStatus)
                {
                    //折叠案例编辑界面
                    EditCaseNavigationHelper.SetEditCaseViewStatus(false, false);
                }

                if (args.MsgToken == ExportKeys.DeviceMainView)
                {
                    var devTmp = args.Parameter as DeviceExtractionAdorner;
                    if (devTmp != null && devTmp.Device != null)
                    {
                        PreCacheToken delToken = new PreCacheToken(devTmp.Device.ID, ExportKeys.DeviceMainView);
                        if (!SystemContext.Instance.CurCacheViews.TryGetFirstView(delToken, out targetView))
                        {
                            targetView = NavigationViewCreater.CreateView(args.MsgToken, args.Parameter);
                            SystemContext.Instance.CurCacheViews.AddViewCache(delToken, targetView);
                        }
                    }
                }
                else
                {
                    //记录打开案例编辑界面之前的页面,方便返回使用
                    EditCaseNavigationHelper.RecordBeforeViewOnisExpanded(MainView);
                    targetView = NavigationViewCreater.CreateView(args.MsgToken, args.Parameter);
                }
            }

            MainView = targetView;
        }
Esempio n. 3
0
 private void Instance_CaseChanged(object sender, PropertyChangedEventArgs <Project.CaseManagement.Case> e)
 {
     if (e.NewValue == null)
     {
         IsShowCurCaseNameRow = false;
         IsShowDeviceListRow  = false;
         EditCaseNavigationHelper.ResetCurCaseStatus();
         //清除界面缓存
         SystemContext.Instance.CurCacheViews.Clear();
     }
     else
     {
         IsShowDeviceListRow  = true;
         IsShowCurCaseNameRow = true;
     }
 }
Esempio n. 4
0
 //打开案例编辑界面
 private void ExecuteOpenCaseEditCommand()
 {
     EditCaseNavigationHelper.SetEditCaseViewStatus(!EditCaseNavigationHelper.CurEditViewOpenStatus);
 }