陈嘉乐
2020-10-13 611786df5108dca0bdcff03834cc285cba4b8e61
HDL_ON/UI/UI2/FuntionControlView/Curtain/MotorCurtainPageBLL.cs
@@ -35,7 +35,11 @@
                        bodyView.btnCurtainClose.IsSelected = true;
                        bodyView.btnCurtainStop.IsSelected = false;
                    }
                    bodyView.controlBar.Progress = bodyView.curtainSeekBar.Progress = Convert.ToInt32(uCurtain.openLevel);
                    if ((DateTime.Now - uCurtain.refreshTime).TotalMilliseconds > 300)
                    {
                        bodyView.controlBar.Progress = bodyView.curtainSeekBar.Progress = Convert.ToInt32(uCurtain.openLevel);
                    }
                }
            });
@@ -104,17 +108,17 @@
            DateTime delayTime = DateTime.MinValue;
            btnMinusSignIcon.MouseDownEventHandler = (sender, e) => {
            btnMinusSignIcon.MouseLongEventHandler = (sender, e) => {
                if (curtain.openLevel > 1)
                {
                    curtain.openLevel--;
                    curtainSeekBar.Progress = controlBar.Progress = curtain.openLevel;
                    controlBar.Progress = curtainSeekBar.Progress = curtain.openLevel;
                    delayTime = DateTime.Now;
                    new System.Threading.Thread(() => {
                        while(delayTime != DateTime.MaxValue)
                        while (delayTime != DateTime.MaxValue)
                        {
                            System.Threading.Thread.Sleep(100);
                            if((DateTime.Now - delayTime).TotalSeconds > 1)
                            if ((DateTime.Now - delayTime).TotalSeconds > 1)
                            {
                                if (curtain.openLevel < 1)
                                {
@@ -126,19 +130,20 @@
                                });
                            }
                        }
                    }) { IsBackground = true }.Start();
                    })
                    { IsBackground = true }.Start();
                }
            };
            btnMinusSignIcon.MouseUpEventHandler = (sender, e) => {
                delayTime = DateTime.MaxValue;
                delayTime = DateTime.MinValue;
                Control.Send(CommandType_A.write, curtain);
            };
            btnPlusSgnIcon.MouseDownEventHandler = (sender, e) => {
                if (curtain.openLevel < 100)
            btnPlusSgnIcon.MouseLongEventHandler = (sender, e) => {
                if (curtain.openLevel > 1)
                {
                    curtain.openLevel++;
                    curtainSeekBar.Progress = controlBar.Progress = curtain.openLevel;
                    controlBar.Progress = curtainSeekBar.Progress = curtain.openLevel;
                    delayTime = DateTime.Now;
                    new System.Threading.Thread(() => {
                        while (delayTime != DateTime.MaxValue)
@@ -161,30 +166,41 @@
                }
            };
            btnPlusSgnIcon.MouseUpEventHandler = (sender, e) => {
                delayTime = DateTime.MaxValue;
                delayTime = DateTime.MinValue;
                Control.Send(CommandType_A.write, curtain);
            };
            curtainSeekBar.OnProgressChangedEvent = (sender, e) =>
            {
                if ((DateTime.Now - delayTime).TotalMilliseconds > 300)
                controlBar.Progress = curtainSeekBar.Progress;
                new System.Threading.Thread(() =>
                {
                    delayTime = DateTime.Now;
                    curtain.openLevel = e;
                    controlBar.Progress = e;
                    Control.Send(CommandType_A.write, curtain);
                }
                    if ((DateTime.Now - delayTime).TotalMilliseconds > 300)
                    {
                        delayTime = DateTime.Now;
                        curtain.openLevel = e;
                        Control.Send(CommandType_A.write, curtain);
                        curtain.refreshTime = DateTime.Now;
                    }
                })
                { IsBackground = true }.Start();
            };
            controlBar.OnProgressChangedEvent = (sender, e) =>
            {
                if ((DateTime.Now - delayTime).TotalMilliseconds > 300)
                curtainSeekBar.Progress = controlBar.Progress;
                new System.Threading.Thread(() =>
                {
                    delayTime = DateTime.Now;
                    curtain.openLevel = e;
                    curtainSeekBar.Progress = e;
                    Control.Send(CommandType_A.write, curtain);
                }
                    MainPage.Log(delayTime.ToLongTimeString());
                    if ((DateTime.Now - delayTime).TotalMilliseconds > 300)
                    {
                        delayTime = DateTime.Now;
                        curtain.openLevel = e;
                        Control.Send(CommandType_A.write, curtain);
                        curtain.refreshTime = DateTime.Now;
                    }
                })
                { IsBackground = true }.Start();
            };
        }