陈嘉乐
2021-03-19 ba9e028d73bab5b7a0f000d11b39460d2b57707a
HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/EditControl.cs
@@ -10,10 +10,9 @@
        public EditControl()
        {
        }
        public void Show(Entity.Function control, Pir pir, Action<Entity.Function> action)
        public void Show(Entity.Function control,Action<Entity.Function> action)
        {
            #region 界面布局
            this.BackgroundColor = CSS.CSS_Color.viewMiddle;
            PirDevice.View.TopView topView = new View.TopView();
            topView.topNameBtn.TextID = StringId.pipeiyaokongqi;
@@ -32,7 +31,7 @@
                BackgroundColor = CSS.CSS_Color.viewMiddle,
            };
            this.AddChidren(viewLayout);
            //遥控器名称:
            FrameLayout50 editNameFLayout = new FrameLayout50(); 
            editNameFLayout.btnText.Text = Language.StringByID(StringId.yaokongqimingcheng) + ":";
            editNameFLayout.btnEditText.Text = control.name;
@@ -40,62 +39,37 @@
            editNameFLayout.btnNextIcon.Width = Application.GetRealWidth(28);
            editNameFLayout.btnNextIcon.UnSelectedImagePath = "LogicIcon/editname.png";
            viewLayout.AddChidren(editNameFLayout.FLayoutView());
            //遥控器所属区域:
            FrameLayout50 areaFLayout = new FrameLayout50(); 
            areaFLayout.btnText.Text = Language.StringByID(StringId.yaokongqiquyu);
            areaFLayout.btnEditText.Text = Intelligence.Automation.LogicMethod.GetGetRoomName(control);
            areaFLayout.frameLayout.Y = editNameFLayout.frameLayout.Bottom;
            viewLayout.AddChidren(areaFLayout.FLayoutView());
            #endregion
            #region
            //修改名称点击事件
            editNameFLayout.btnClick.MouseUpEventHandler += (sender, e) =>
            {
                List<string> list = new List<string>();
                for (int i = 0; i < pir.FunctioList.Count; i++)
                for (int i = 0; i < Pir.currPir.FunctioList.Count; i++)
                {
                    list.Add(pir.FunctioList[i].name);
                    list.Add(Pir.currPir.FunctioList[i].name);
                }
                Method method = new Method();
                method.EditControlName(StringId.editName,list, control.name, (name,view) =>
                method.EditControlName(StringId.editName,list, control.name, (name, dialog) =>
                {
                    //加载log
                    Loading loading = new Loading();
                    view.AddChidren(loading);
                    HDL_ON.DAL.Server.ResponsePackNew responsePackNew = null;
                    loading.Start();
                    new System.Threading.Thread(() =>
                    Method.ThreadSend(new Control { deviceId = control.deviceId, name = name }, (responsePackNew) =>
                    {
                        try
                        {
                            responsePackNew = PirSend.DeviceRename(control.deviceId, control.name);
                        }
                        catch { }
                        finally
                        {
                            Application.RunOnMainThread(() =>
                            {
                                loading.Hide();
                                if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "")
                                {
                                    view.Close();
                                    editNameFLayout.btnEditText.Text = name;
                                    control.name = name;
                                }
                                else
                                {
                                    Method methodError = new Method();
                                    methodError.ErrorShow(responsePackNew,"");
                                }
                        dialog.Close();
                        editNameFLayout.btnEditText.Text = name;
                        control.name = name;
                            });
                        }
                    })
                    { IsBackground = true }.Start();
                    }, "修改名称", "dialog", null, dialog);
                   
                },()=> { });
            };
            //遥控器所属区域选中事件
            areaFLayout.btnClick.MouseUpEventHandler += (sender, e) =>
            {
                Method method = new Method();
@@ -105,6 +79,7 @@
                    areaFLayout.btnEditText.Text = Intelligence.Automation.LogicMethod.GetGetRoomName(control);
                });
            };
            #endregion
        }
    }
}