/// <summary> /// 退出当前界面 /// </summary> /// <param name="dmGuid"></param> /// <param name="timeout"></param> public static void ExitCurrentView(string dmGuid, TimeSpan timeout) { IWlyUIView current = null; var wait = FlowLogicHelper.RepeatRun(() => { foreach (var v in _viewList) { if (v.IsCurrentView(dmGuid)) { current = v; return(true); } } return(false); }, timeout); if (!wait) { throw new InvalidOperationException("无法确定当前所属界面"); } wait = FlowLogicHelper.RepeatRun(() => { if (current.IsCurrentView(dmGuid)) { current.Exit(dmGuid); Thread.Sleep(400); return(false); } return(true); }, timeout); if (!wait) { throw new InvalidOperationException("无法从当前界面退出"); } }