wxr
2020-03-31 002a3f2e9d2f9579c01f88af12bd8a320003569f
HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs
@@ -24,43 +24,46 @@
                    {
                        return;
                    }
                    switch (updataFunction.functionCategory)
                    for (int i = 0; i < scrolView.ChildrenCount; i++)
                    {
                        case FunctionType.Light:
                            var uLight = updataFunction as Light;
                            for (int i = 0; i < scrolView.ChildrenCount; i++)
                        if (scrolView.GetChildren(i).Tag == null || scrolView.GetChildren(i).Tag.ToString() == "")
                        {
                            continue;
                        }
                        var viewTag = scrolView.GetChildren(i).Tag.ToString();
                        if (viewTag == updataFunction.functionCategory.ToString() + "-" + updataFunction.functionType + "-" + updataFunction.sid)
                        {
                            if (scrolView.GetChildren(i).GetType().Name == "FunctionControlZone")
                            {
                                if (scrolView.GetChildren(i).Tag == null || scrolView.GetChildren(i).Tag.ToString() == "")
                                var fcView = scrolView.GetChildren(i) as FrameLayout;
                                for (int j = 0; j < fcView.ChildrenCount; j++)
                                {
                                    continue;
                                }
                                var viewTag = scrolView.GetChildren(i).Tag.ToString();
                                if (viewTag == updataFunction.functionCategory.ToString() + "-" + updataFunction.functionType + "-" + updataFunction.sid)
                                {
                                    if (scrolView.GetChildren(i).GetType().Name == "FunctionControlZone")
                                    if (fcView.GetChildren(j).Tag == null)
                                        continue;
                                    var cTag = fcView.GetChildren(j).Tag.ToString();
                                    switch (updataFunction.functionCategory)
                                    {
                                        var fcView = scrolView.GetChildren(i) as FrameLayout;
                                        for (int j = 0; j < fcView.ChildrenCount; j++)
                                        {
                                            if (fcView.GetChildren(j).Tag == null)
                                                continue;
                                            var cTag = fcView.GetChildren(j).Tag.ToString();
                                        case FunctionCategory.Light:
                                        case FunctionCategory.AC:
                                            #region 按钮状态更新
                                            if (cTag == updataFunction.functionType + "_Switch_" + updataFunction.sid)
                                            {
                                                try
                                                {
                                                    (fcView.GetChildren(j) as Button).IsSelected = uLight.on_off == 1;
                                                    (fcView.GetChildren(j) as Button).IsSelected = updataFunction.on_off == "on";
                                                }
                                                catch (Exception ex)
                                                {
                                                    MainPage.Log($"{this.GetType()} error 0 : {ex.Message}");
                                                }
                                            }
                                            #endregion
                                            #region 调光状态进度更新
                                            else if (cTag == updataFunction.functionType + "_DimmerBar_" + updataFunction.sid)
                                            {
                                                try
                                                {
                                                    if (uLight.on_off == 1)
                                                    if (updataFunction.on_off == "on")
                                                    {
                                                        (fcView.GetChildren(j) as DiyImageSeekBar).Progress = (updataFunction as Light).brightness;
                                                        (fcView.GetChildren(j) as DiyImageSeekBar).ProgressBarColor = CSS.CSS_Color.AuxiliaryColor1;
@@ -75,11 +78,53 @@
                                                    MainPage.Log($"{this.GetType()} error 1 : {ex.Message}");
                                                }
                                            }
                                        }
                                            #endregion
                                            #region 功能状态信息更新
                                            else if (cTag == updataFunction.functionType + "_laststates_" + updataFunction.sid)
                                            {
                                                try
                                                {
                                                    (fcView.GetChildren(j) as Button).IsSelected = updataFunction.on_off == "on";
                                                    (fcView.GetChildren(j) as Button).Text = updataFunction.lastState;
                                                }
                                                catch (Exception ex)
                                                {
                                                    MainPage.Log($"{this.GetType()} error 2 : {ex.Message}");
                                                }
                                            }
                                            break;
                                            #endregion
                                        case FunctionCategory.Curtain:
                                            #region 窗帘更新
                                            var uCurtain = updataFunction as Curtain;
                                            if (cTag == updataFunction.functionType + "_off_" + updataFunction.sid)
                                            {
                                                try
                                                {
                                                    (fcView.GetChildren(j) as Button).IsSelected = uCurtain.on_off == "off";
                                                }
                                                catch (Exception ex)
                                                {
                                                    MainPage.Log($"{this.GetType()} error 3 : {ex.Message}");
                                                }
                                            }
                                            else
                                            {
                                                try
                                                {
                                                    (fcView.GetChildren(j) as Button).IsSelected = uCurtain.on_off == "on";
                                                }
                                                catch (Exception ex)
                                                {
                                                    MainPage.Log($"{this.GetType()} error 4 : {ex.Message}");
                                                }
                                            }
                                            #endregion
                                            break;
                                    }
                                }
                            }
                            break;
                        }
                    }
                });
            }