| | |
| | | |
| | | #region 变量申明 |
| | | /// <summary> |
| | | /// IsDrawerLockMode |
| | | /// </summary> |
| | | public bool IsDrawerLockMode; |
| | | /// <summary>
|
| | | /// 当前门锁 |
| | | /// </summary> |
| | | ZigBee.Device.DoorLock doorLock; |
| | |
| | | /// 保留上一次音量 |
| | | /// </summary> |
| | | bool canOpenNormallyMode = false; |
| | | /// <summary> |
| | | /// IsDrawerLockMode[主页左滑] |
| | | /// </summary> |
| | | public bool IsDrawerLockMode; |
| | | /// <summary> |
| | | /// 当前电量 |
| | | /// </summary> |
| | |
| | | { |
| | | ReadDoorLockUserInfo(); |
| | | } |
| | | else |
| | | { |
| | | string msg1 = Language.StringByID(R.MyInternationalizationString.DoorLockOffLine); |
| | | this.ShowTipMsg(msg1); |
| | | return; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | TextSize = 10, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | }; |
| | | midTopFrameLayout.AddChidren(btnCurrentPowerText); |
| | | midTopFrameLayout.AddChidren(btnCurrentPowerText);
|
| | | #if Android
|
| | | btnCurrentPowerText.X = btnStatus.Right + Application.GetRealWidth(20);
|
| | | #endif |
| | | |
| | | //门锁开/关图片 |
| | | btnDoorLockPic = new Button() |
| | |
| | | }; |
| | | flMain.AddChidren(progressBackground); |
| | | |
| | | var progressValue = (currentVolume * (Convert.ToInt32(((float)100 / 15) * 100))) / 100; |
| | | progressText = new Button() |
| | | { |
| | | Height = Application.GetRealHeight(58), |
| | | Y = Application.GetRealHeight(89), |
| | | TextColor = ZigbeeColor.Current.XMGray2, |
| | | TextAlignment = TextAlignment.Center, |
| | | Text = currentVolume.ToString(), |
| | | Text = progressValue.ToString() + "%", |
| | | }; |
| | | |
| | | diyImageVerticalSeekBar = new DiyImageVerticalSeekBar() |
| | |
| | | ProgressTextColor = ZigbeeColor.Current.LogicBtnCancelColor, |
| | | ProgressTextSize = 12,//显示百分比字体大小 |
| | | SeekBarViewHeight = Application.GetRealHeight(17),//进度条的宽度 |
| | | Progress = (currentVolume * (Convert.ToInt32(((float)100 / 15) * 100))) / 100, |
| | | Progress = progressValue, |
| | | }; |
| | | progressBackground.AddChidren(progressText); |
| | | progressBackground.AddChidren(diyImageVerticalSeekBar); |
| | |
| | | curVolume = comandValueTemp; |
| | | } |
| | | currentVolume = curVolume; |
| | | progressText.Text = curVolume.ToString(); |
| | | progressText.Text = e.ToString() + "%"; |
| | | }; |
| | | } |
| | | |
| | |
| | | var tempDoor = (ZigBee.Device.DoorLock)tempDevice; |
| | | if (tempDoor.doorLockOperatingEventNotificationCommand != null) |
| | | { |
| | | Application.RunOnMainThread(() => { NomallyOpenModeInvalidDialog(true); }); |
| | | //非主人不弹这个窗口 |
| | | if (UserCenterResourse.UserInfo.AuthorityNo != 1)
|
| | | {
|
| | | return;
|
| | | } |
| | | //非管理员的密码,不弹这个窗口 |
| | | if (tempDoor.doorLockOperatingEventNotificationCommand.UserID > 9)
|
| | | {
|
| | | return;
|
| | | }
|
| | |
|
| | | if (canOpenNormallyMode) |
| | | { |
| | | Application.RunOnMainThread(() => { NomallyOpenModeInvalidDialog(true); }); |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | { |
| | | CommonPage.Loading.Start(""); |
| | | }); |
| | | |
| | | //是否支持常开 |
| | | canOpenNormallyMode = DoorLockCommonInfo.CanNormallyOpen(doorLock); |
| | | if (canOpenNormallyMode) |
| | | { |
| | | //获取门锁常开模式 |
| | | var resultRes = await DoorLockCommonInfo.GetNormallyOpenMode(doorLock); |
| | | if (resultRes == null) |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | btnNormallyOpen.UnSelectedImagePath = "DoorLock/NormallyOpenOffline.png"; |
| | | btnNormallyOpen.Enable = false; |
| | | string msg = Language.StringByID(R.MyInternationalizationString.GetNormallyOpenModeFailed); |
| | | this.ShowTipMsg(msg); |
| | | }); |
| | | } |
| | | else |
| | | { |
| | | var tempRes = false; |
| | | if (resultRes == true) |
| | | { |
| | | tempRes = true; |
| | | } |
| | | else |
| | | { |
| | | tempRes = false; |
| | | } |
| | | |
| | | NormallyOpenModeValue(tempRes); |
| | | |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | UpdateNomallyOpenStatus(); |
| | | }); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | btnNormallyOpenFrameLayout.Width = Application.GetRealWidth(0); |
| | | }); |
| | | } |
| | | |
| | | //是否支持音量 |
| | | canVolume = DoorLockCommonInfo.CanVolume(doorLock); |
| | | if (canVolume) |
| | | { |
| | | //读取音量 |
| | | var resultRes = await doorLock.GetVolumeAsync(); |
| | | if (resultRes == null || resultRes.volumeResponseData == null) |
| | | { |
| | | var listDevice = new List<CommonDevice> { }; |
| | | listDevice.Add(doorLock); |
| | | var devTemp = Common.LocalDevice.Current.GetMyDeviceEnumInfo(listDevice); |
| | | if (devTemp.ConcreteType == DeviceConcreteType.IntelligentLocks_Sone) |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | var volumeMsg = Language.StringByID(R.MyInternationalizationString.GetVolumeFailed); |
| | | this.ShowTipMsg(volumeMsg); |
| | | }); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | volumeData = resultRes.volumeResponseData; |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | UpdateVolume(); |
| | | }); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | btnVolumeFrameLayout.Width = Application.GetRealWidth(0); |
| | | btnPower.X = Application.GetRealWidth(444); |
| | | }); |
| | | } |
| | | |
| | | //读取门锁电量:簇ID:1 属性ID 33 |
| | | doorLock.ReadAttri(Cluster_ID.Power, AttriButeId.DoorLockPower); |
| | | //上报电量等1秒 |
| | | System.Threading.Thread.Sleep(1000); |
| | | //获取门锁常开模式 |
| | | await DoorLockCommonInfo.GetNormallyOpenMode(doorLock); |
| | | //读取音量 |
| | | ReadVolume(); |
| | | } |
| | | catch { } |
| | | catch (Exception ex) |
| | | { |
| | | var mess = ex.Message; |
| | | } |
| | | finally |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | UpdateNomallyOpenStatus(); |
| | | CommonPage.Loading.Hide(); |
| | | }); |
| | | } |
| | |
| | | //开锁事件 |
| | | EventHandler<MouseEventArgs> hander1 = async (sender, e) => |
| | | { |
| | | if (DoorLockCommonInfo.IsDoorLockNormallyMode == true) |
| | | { |
| | | string msg0 = Language.StringByID(R.MyInternationalizationString.CurrentNormallyOpenMode); |
| | | this.ShowTipMsg(msg0); |
| | | } |
| | | else |
| | | { |
| | | OpenDoorLockHandle(progressButton, btnDoorLockPic, btnStatus); |
| | | } |
| | | //常开模式下,点击开锁无效 |
| | | if (btnNormallyOpen.IsSelected == true)
|
| | | {
|
| | | this.ShowMassage(ShowMsgType.Remind, "当前状态为常开模式");
|
| | | return;
|
| | | }
|
| | | OpenDoorLockHandle(progressButton, btnDoorLockPic, btnStatus); |
| | | }; |
| | | openFrameLayout.MouseUpEventHandler += hander1; |
| | | btnDoorOpenPic.MouseUpEventHandler += hander1; |
| | |
| | | //关锁事件 |
| | | EventHandler<MouseEventArgs> hander2 = (sender, e) => |
| | | { |
| | | if (DoorLockCommonInfo.IsDoorLockNormallyMode == true) |
| | | if (canOpenNormallyMode) |
| | | { |
| | | NomallyOpenModeInvalidDialog(); |
| | | var key = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint; |
| | | if (doorLock.IsDoorLockNormallyMode.ContainsKey(key)) |
| | | { |
| | | if (doorLock.IsDoorLockNormallyMode[key] == true) |
| | | { |
| | | NomallyOpenModeInvalidDialog(); |
| | | } |
| | | } |
| | | } |
| | | else |
| | | { |
| | |
| | | { |
| | | VolumeDialog(progressText, diyImageVerticalSeekBar); |
| | | } |
| | | else |
| | | { |
| | | var volumeMsg = Language.StringByID(R.MyInternationalizationString.NoSupport); |
| | | this.ShowTipMsg(volumeMsg); |
| | | } |
| | | }; |
| | | btnVolumeFrameLayout.MouseDownEventHandler += handerVolume; |
| | | btnVolume.MouseDownEventHandler += handerVolume; |
| | |
| | | //常开模式点击事件 |
| | | EventHandler<MouseEventArgs> handerNormallyOpen = (sender, e) => |
| | | { |
| | | if (canOpenNormallyMode) |
| | | { |
| | | btnNormallyOpen.IsSelected = !btnNormallyOpen.IsSelected; |
| | | NomallyOpenDialog(); |
| | | } |
| | | else |
| | | { |
| | | var volumeMsg = Language.StringByID(R.MyInternationalizationString.NoSupport); |
| | | this.ShowTipMsg(volumeMsg); |
| | | } |
| | | NomallyOpenDialog(); |
| | | |
| | | }; |
| | | btnNormallyOpenFrameLayout.MouseUpEventHandler += handerNormallyOpen; |
| | | btnNormallyOpen.MouseUpEventHandler += handerNormallyOpen; |
| | |
| | | } |
| | | #endregion |
| | | |
| | | #region 音量 |
| | | /// <summary> |
| | | /// 读取音量 |
| | | /// </summary> |
| | | private async void ReadVolume() |
| | | { |
| | | //获取门锁音量 |
| | | if (!canVolume) |
| | | { |
| | | return; |
| | | } |
| | | var resultRes = await doorLock.GetVolumeAsync(); |
| | | |
| | | if (resultRes == null || resultRes.volumeResponseData == null) |
| | | { |
| | | var listDevice = new List<CommonDevice> { }; |
| | | listDevice.Add(doorLock); |
| | | var devTemp = Common.LocalDevice.Current.GetMyDeviceEnumInfo(listDevice); |
| | | if (devTemp.ConcreteType == DeviceConcreteType.IntelligentLocks_Sone) |
| | | { |
| | | var volumeMsg = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime); |
| | | this.ShowTipMsg(volumeMsg); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | volumeData = resultRes.volumeResponseData; |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | UpdateVolume(); |
| | | }); |
| | | } |
| | | } |
| | | #region 音量 |
| | | /// <summary> |
| | | /// 更新音量 |
| | | /// </summary> |
| | |
| | | return; |
| | | } |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | var volumeMsg = Language.StringByID(R.MyInternationalizationString.SetVolumeSuccess); |
| | | this.ShowTipMsg(volumeMsg); |
| | | oldVolume = currentVolume; |
| | | CommonPage.Loading.Hide(); |
| | | }); |
| | | { |
| | | var volumeMsg = Language.StringByID(R.MyInternationalizationString.SetVolumeSuccess); |
| | | this.ShowTipMsg(volumeMsg); |
| | | oldVolume = currentVolume; |
| | | CommonPage.Loading.Hide(); |
| | | }); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | } |
| | | #endregion |
| | | |
| | | #region 常开模式 |
| | | #region 常开模式 |
| | | /// <summary> |
| | | /// 门锁常开模式值 |
| | | /// </summary> |
| | | public void NormallyOpenModeValue(bool value) |
| | | { |
| | | string key = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint; |
| | | if (doorLock.IsDoorLockNormallyMode.ContainsKey(key)) |
| | | { |
| | | doorLock.IsDoorLockNormallyMode[key] = value; |
| | | } |
| | | else |
| | | { |
| | | doorLock.IsDoorLockNormallyMode.Add(key, value); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 常开模式处理 |
| | | /// </summary> |
| | | private async void NomallyOpenDialog() |
| | | { |
| | | if (btnNormallyOpen.IsSelected) |
| | | if (!btnNormallyOpen.IsSelected) |
| | | { |
| | | if (UserCenterResourse.UserInfo.AuthorityNo != 1) |
| | | { |
| | |
| | | var confirm = Language.StringByID(R.MyInternationalizationString.Confrim); |
| | | var alert = new ShowDoorLockMsgControl(ShowDoorLockMsgControl.DoorLockMsgType.Confirm, msg, confirm); |
| | | alert.Show(); |
| | | alert.CancelClickEvent += () => |
| | | { |
| | | btnNormallyOpen.IsSelected = false; |
| | | }; |
| | | |
| | | alert.ConfirmClickEvent += async () => |
| | | { |
| | | Application.RunOnMainThread(() => { CommonPage.Loading.Start(""); }); |
| | |
| | | { |
| | | string msg0 = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime); |
| | | this.ShowTipMsg(msg0); |
| | | btnNormallyOpen.IsSelected = false; |
| | | return; |
| | | } |
| | | if (result.defaultControlResponseData.status != 0) |
| | | { |
| | | string msg1 = Language.StringByID(R.MyInternationalizationString.OpenNormallyOpenModeFailed); |
| | | this.ShowTipMsg(msg1); |
| | | btnNormallyOpen.IsSelected = false; |
| | | return; |
| | | } |
| | | else |
| | | { |
| | | DoorLockCommonInfo.IsDoorLockNormallyMode = true; |
| | | //每次重新设置常开,默认时间都是12小时 |
| | | DoorLockCommonInfo.NormallyOpenModeInvalidTime = 12; |
| | | NormallyOpenModeValue(true); |
| | | UpdateNomallyOpenStatus(); |
| | | CommonPage.Loading.Hide(); |
| | | |
| | |
| | | var doorLockInValidSetting = Language.StringByID(R.MyInternationalizationString.DoorLockInValidSetting); |
| | | var alertNomallyModeIsTurnOn = new ShowDoorLockMsgControl(ShowDoorLockMsgControl.DoorLockMsgType.DoorLockLogic, msgNomallyModeIsTurnOn, doorLockInValidSetting); |
| | | alertNomallyModeIsTurnOn.Show(); |
| | | |
| | | alertNomallyModeIsTurnOn.LogicClickEvent += () => |
| | | { |
| | | //自动化 |
| | | //自动化 |
| | | Shared.Phone.Device.Logic.SkipView.SkipAddLogic(2); |
| | | |
| | | }; |
| | | alertNomallyModeIsTurnOn.InvalidClickEvent += async () => |
| | | { |
| | |
| | | /// </summary> |
| | | public void NomallyOpenModeInvalidDialog(bool IsFromReport = false) |
| | | { |
| | | if (UserCenterResourse.UserInfo.AuthorityNo != 1) |
| | | { |
| | | //this.ShowMassage(ShowMsgType.Tip, Language.StringByID(R.MyInternationalizationString.NoAccess)); |
| | | return; |
| | | } |
| | | string msg = Language.StringByID(R.MyInternationalizationString.NomallyModeIsCanceled).Replace("{0}", "\r\n"); |
| | | var confirm = Language.StringByID(R.MyInternationalizationString.SureCancel); |
| | | var alert = new ShowDoorLockMsgControl(ShowDoorLockMsgControl.DoorLockMsgType.NomallyOpenMode, msg, confirm); |
| | |
| | | alert = new ShowDoorLockMsgControl(ShowDoorLockMsgControl.DoorLockMsgType.CancelNomallyOpenModeWithLogic, msg, confirm); |
| | | } |
| | | alert.Show(); |
| | | alert.MsgControlClickEvent += async () => |
| | | { |
| | | if (IsFromReport) |
| | | { |
| | | //取消常开 |
| | | NormallyOpenModeValue(false); |
| | | UpdateNomallyOpenStatus(); |
| | | } |
| | | else |
| | | { |
| | | //保持常开 |
| | | NormallyOpenModeValue(true); |
| | | UpdateNomallyOpenStatus(); |
| | | } |
| | | }; |
| | | alert.CancelClickEvent += async () => |
| | | { |
| | | //保持常开 |
| | | if (IsFromReport) |
| | | { |
| | | Application.RunOnMainThread(() => { CommonPage.Loading.Start(""); }); |
| | | var result = await doorLock.SetNormallyOpenModeFuncAsync(true); |
| | | if (result == null || result.defaultControlResponseData == null) |
| | | { |
| | | string msg0 = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime); |
| | | this.ShowTipMsg(msg0); |
| | | btnNormallyOpen.IsSelected = false; |
| | | DoorLockCommonInfo.IsDoorLockNormallyMode = false; |
| | | return; |
| | | } |
| | | if (result.defaultControlResponseData.status != 0) |
| | | { |
| | | string msg1 = Language.StringByID(R.MyInternationalizationString.OpenNormallyOpenModeFailed); |
| | | this.ShowTipMsg(msg1); |
| | | btnNormallyOpen.IsSelected = false; |
| | | DoorLockCommonInfo.IsDoorLockNormallyMode = false; |
| | | return; |
| | | } |
| | | else |
| | | { |
| | | DoorLockCommonInfo.IsDoorLockNormallyMode = true; |
| | | btnNormallyOpen.IsSelected = true; |
| | | UpdateNomallyOpenStatus(); |
| | | CommonPage.Loading.Hide(); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | btnNormallyOpen.IsSelected = true; |
| | | } |
| | | }; |
| | | { |
| | | //保持常开 |
| | | if (IsFromReport) |
| | | { |
| | | Application.RunOnMainThread(() => { CommonPage.Loading.Start(""); }); |
| | | var result = await doorLock.SetNormallyOpenModeFuncAsync(true); |
| | | if (result == null || result.defaultControlResponseData == null) |
| | | { |
| | | string msg0 = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime); |
| | | this.ShowTipMsg(msg0); |
| | | NormallyOpenModeValue(false); |
| | | UpdateNomallyOpenStatus(); |
| | | return; |
| | | } |
| | | if (result.defaultControlResponseData.status != 0) |
| | | { |
| | | string msg1 = Language.StringByID(R.MyInternationalizationString.OpenNormallyOpenModeFailed); |
| | | this.ShowTipMsg(msg1); |
| | | NormallyOpenModeValue(false); |
| | | UpdateNomallyOpenStatus(); |
| | | return; |
| | | } |
| | | else |
| | | { |
| | | NormallyOpenModeValue(true); |
| | | UpdateNomallyOpenStatus(); |
| | | CommonPage.Loading.Hide(); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | NormallyOpenModeValue(true); |
| | | UpdateNomallyOpenStatus(); |
| | | } |
| | | }; |
| | | alert.ConfirmClickEvent += async () => |
| | | { |
| | | //确认取消常开 |
| | | if (IsFromReport) |
| | | { |
| | | DoorLockCommonInfo.IsDoorLockNormallyMode = false; |
| | | btnNormallyOpen.IsSelected = false; |
| | | NormallyOpenModeValue(true); |
| | | UpdateNomallyOpenStatus(); |
| | | } |
| | | else |
| | |
| | | { |
| | | string msg0 = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime); |
| | | this.ShowTipMsg(msg0); |
| | | btnNormallyOpen.IsSelected = true; |
| | | return; |
| | | } |
| | | if (result.defaultControlResponseData.status != 0) |
| | | { |
| | | string msg1 = Language.StringByID(R.MyInternationalizationString.CloseNormallyOpenModeFailed); |
| | | this.ShowTipMsg(msg1); |
| | | btnNormallyOpen.IsSelected = true; |
| | | return; |
| | | } |
| | | else |
| | | { |
| | | DoorLockCommonInfo.IsDoorLockNormallyMode = false; |
| | | NormallyOpenModeValue(false); |
| | | UpdateNomallyOpenStatus(); |
| | | string msg2 = Language.StringByID(R.MyInternationalizationString.CloseNormallyOpenModeSuccess); |
| | | this.ShowTipMsg(msg2); |
| | | Shared.Phone.Device.Logic.SkipView.LockCloseLogic(doorLock); |
| | | // |
| | | } |
| | | } |
| | | }; |
| | |
| | | var timeConfrim = Language.StringByID(R.MyInternationalizationString.Confrim); |
| | | var alertTimeInValidSetting = new ShowDoorLockMsgControl(ShowDoorLockMsgControl.DoorLockMsgType.InValid, msgTimeInValidSetting, timeConfrim); |
| | | alertTimeInValidSetting.Show(); |
| | | alertTimeInValidSetting.CancelClickEvent += () => |
| | | { |
| | | btnNormallyOpen.IsSelected = true; |
| | | }; |
| | | |
| | | alertTimeInValidSetting.InvalidTimeAction += (obj) => |
| | | { |
| | | Regex rg = new Regex("^[0-9]+$"); |
| | |
| | | } |
| | | var temp = int.Parse(obj); |
| | | DoorLockCommonInfo.NormallyOpenModeInvalidTime = temp; |
| | | btnNormallyOpen.IsSelected = true; |
| | | Shared.Phone.Device.Logic.SkipView.LockAddModifyLogic(DoorLockCommonInfo.NormallyOpenModeInvalidTime,doorLock); |
| | | //调用自动化接口设置失效时间 |
| | | }; |
| | | } |
| | | /// <summary> |
| | |
| | | { |
| | | if (!canOpenNormallyMode) |
| | | { |
| | | btnNormallyOpen.UnSelectedImagePath = "DoorLock/NormallyOpenOffline.png"; |
| | | btnNormallyOpen.Enable = false; |
| | | btnNormallyOpenFrameLayout.Width = Application.GetRealWidth(0); |
| | | return; |
| | | } |
| | | if (DoorLockCommonInfo.IsDoorLockNormallyMode == true) |
| | | string key = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint; |
| | | if (doorLock.IsDoorLockNormallyMode[key] == true) |
| | | { |
| | | btnNormallyOpen.IsSelected = true; |
| | | btnDoorLockPic.IsSelected = true; |
| | |
| | | btnStatus.Text = Language.StringByID(R.MyInternationalizationString.Current) + Language.StringByID(R.MyInternationalizationString.DoorLockOpen); |
| | | |
| | | } |
| | | else if (DoorLockCommonInfo.IsDoorLockNormallyMode == false) |
| | | else if (doorLock.IsDoorLockNormallyMode[key] == false) |
| | | { |
| | | btnStatus.Text = Language.StringByID(R.MyInternationalizationString.Current) + Language.StringByID(R.MyInternationalizationString.CLose); |
| | | btnDoorLockPic.IsSelected = false; |
| | | btnNormallyOpen.IsSelected = false; |
| | | progressButton.Y = Application.GetRealHeight(347); |
| | | } |
| | | else |
| | | { |
| | | btnNormallyOpen.UnSelectedImagePath = "DoorLock/NormallyOpenOffline.png"; |
| | | btnNormallyOpen.Enable = false; |
| | | string msg = Language.StringByID(R.MyInternationalizationString.GetNormallyOpenModeFailed); |
| | | this.ShowTipMsg(msg); |
| | | } |
| | | } |
| | | #endregion |