From f534d41c36d5895322bf691784a10435b64609fe Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期五, 25 十二月 2020 13:52:00 +0800 Subject: [PATCH] 修复添加、删除楼层时候,界面刷新异常问题 --- HDL_ON/UI/UI2/3-Intelligence/Scene/SceneAddPage.cs | 44 +++++++++++++++++++++++++++++++++----------- 1 files changed, 33 insertions(+), 11 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneAddPage.cs b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneAddPage.cs index 46137ff..51aa5fc 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneAddPage.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneAddPage.cs @@ -270,7 +270,6 @@ }; sceneDelayRow.AddChidren(btnSceneDelayTitle); - btnSceneDelayTitle.MouseUpEventHandler = (sender, e) => { Action<string> action = (obj) => { @@ -824,17 +823,40 @@ return; } } - var result = FunctionList.List.AddScene(scene,out scene); - if (result == StateCode.SUCCESS) + var waitPage = new Loading(); + MainPage.BaseView.AddChidren(waitPage); + waitPage.Start(Language.StringByID(StringId.PleaseWait)); + new System.Threading.Thread(() => { - FunctionList.List.scenes.Add(scene); - backAction(); - RemoveFromParent(); - } - else - { - IMessageCommon.Current.ShowErrorInfoAlter(result); - } + try + { + var serverScene = new Scene(); + var result = FunctionList.List.AddScene(scene, out serverScene); + Application.RunOnMainThread(() => + { + if (result == StateCode.SUCCESS) + { + scene = serverScene; + FunctionList.List.scenes.Add(scene); + backAction(); + RemoveFromParent(); + } + else + { + IMessageCommon.Current.ShowErrorInfoAlter(result); + } + }); + } + catch { } + finally + { + Application.RunOnMainThread(() => { + waitPage.Hide(); + waitPage.RemoveFromParent(); + }); + } + }) + { IsBackground = true, Priority = ThreadPriority.AboveNormal }.Start(); }; } -- Gitblit v1.8.0