| | |
| | | using System; |
| | | using Shared.Common; |
| | | using Shared.Phone.Device.CommonForm; |
| | | using Shared.Phone.UserView; |
| | | using ZigBee.Device; |
| | | |
| | |
| | | { |
| | | #region ◆ 变量__________________________ |
| | | /// <summary> |
| | | /// 设备是否在线标识--Online |
| | | /// The action. |
| | | /// </summary> |
| | | private readonly string DeviceStatus_Online = "Online"; |
| | | public HorizontalSeekBar SeekBar; |
| | | public Button seekBarTitle; |
| | | public Action action; |
| | | public Button rollerShadeIMG; |
| | | |
| | | /// <summary> |
| | | /// 收藏按钮 |
| | | /// </summary> |
| | | public Button collectionBtn; |
| | | /// <summary> |
| | | /// 更多设置 |
| | | /// </summary> |
| | | private Button moreBtn; |
| | | /// <summary> |
| | | /// 下、关 |
| | | /// </summary> |
| | | private Button downBtn; |
| | | /// <summary> |
| | | /// 停 |
| | | /// </summary> |
| | | private Button stopBtn; |
| | | /// <summary> |
| | | /// 上、开 |
| | | /// </summary> |
| | | private Button upBtn; |
| | | /// <summary> |
| | | /// 房间 |
| | | /// </summary> |
| | | private Button roomBtn; |
| | | /// <summary> |
| | | /// 房间名 |
| | | /// </summary> |
| | | private Button roomName; |
| | | private Button collectionBtn; |
| | | /// <summary> |
| | | /// 传过来的设备 |
| | | /// </summary> |
| | |
| | | /// 传过来的房间 |
| | | /// </summary> |
| | | private Shared.Common.Room room; |
| | | |
| | | /// <summary> |
| | | /// 房间 |
| | | /// </summary> |
| | | private Button roomBtn; |
| | | /// <summary> |
| | | /// 房间名 |
| | | /// </summary> |
| | | private Button roomName; |
| | | /// <summary> |
| | | /// 网关 |
| | | /// </summary> |
| | |
| | | private bool sendedControlCommand = false; |
| | | |
| | | /// <summary> |
| | | ///延时 300毫秒 |
| | | /// bodyFrameLayout |
| | | /// </summary> |
| | | private int sleepSpan = 300; |
| | | private FrameLayout bodyFrameLayout; |
| | | /// <summary> |
| | | /// StatuBtn |
| | | /// </summary> |
| | | private Button StatuBtn; |
| | | |
| | | /// <summary> |
| | | /// OpenOrUpBtn |
| | | /// </summary> |
| | | public Button OpenOrUpBtn; |
| | | /// <summary> |
| | | /// OpenOrUpBtn |
| | | /// </summary> |
| | | public Button CloseOrDownBtn; |
| | | /// <summary> |
| | | /// StopBtn |
| | | /// </summary> |
| | | public Button StopBtn; |
| | | #endregion |
| | | |
| | | #region ◆ 接口___________________________ |
| | |
| | | { |
| | | try |
| | | { |
| | | var deviceUI = SeekBar.Tag as DeviceUI; |
| | | var deviceUI = this.device; |
| | | //设备为空 |
| | | if (deviceUI.CommonDevice == null) |
| | | { |
| | |
| | | var rollerShade = deviceUI.CommonDevice as Rollershade; |
| | | rollerShade.DeviceStatusReport = common.DeviceStatusReport; |
| | | rollerShade.WcdCurrentPositionLiftPercentage = common.DeviceStatusReport.AttriBute[0].AttriButeData; |
| | | SeekBar.Progress = rollerShade.WcdCurrentPositionLiftPercentage; |
| | | seekBarTitle.Text = $"{SeekBar.Progress} %"; |
| | | StatuBtn.Text = $"{Language.StringByID(R.MyInternationalizationString.Current)} { deviceUI.GetDeviceStatu()}"; |
| | | //SeekBar.Progress = rollerShade.WcdCurrentPositionLiftPercentage; |
| | | //seekBarTitle.Text = $"{SeekBar.Progress} %"; |
| | | rollerShade.LastDateTime = DateTime.Now; |
| | | } |
| | | else if (common.DeviceStatusReport.AttriBute[0].AttributeId == 0) |
| | | { |
| | | //窗帘类型 |
| | | var rollerShade = deviceUI.CommonDevice as Rollershade; |
| | | ////窗帘类型 |
| | | var rollerShade = device.CommonDevice as Rollershade; |
| | | rollerShade.DeviceStatusReport = common.DeviceStatusReport; |
| | | rollerShade.WcdType = common.DeviceStatusReport.AttriBute[0].AttriButeData; |
| | | rollerShade.LastDateTime = DateTime.Now; |
| | |
| | | //***新改***设备状态上报中,当CluterID=3,证明设备在线,直接标记 |
| | | else if (common.DeviceStatusReport.CluterID == 3) |
| | | { |
| | | var rollerShade = deviceUI.CommonDevice as Rollershade; |
| | | rollerShade.IsOnline = 1; |
| | | rollerShadeIMG.IsSelected = rollerShade.IsOnline == 1; |
| | | rollerShade.LastDateTime = DateTime.Now; |
| | | //var rollerShade = deviceUI.CommonDevice as Rollershade; |
| | | //rollerShade.IsOnline = 1; |
| | | //rollerShadeIMG.IsSelected = rollerShade.IsOnline == 1; |
| | | //rollerShade.LastDateTime = DateTime.Now; |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | |
| | | { |
| | | try |
| | | { |
| | | var deviceUI = SeekBar.Tag as DeviceUI; |
| | | //设备为空 |
| | | if (deviceUI.CommonDevice == null) |
| | | { |
| | | return; |
| | | } |
| | | //是否为当前设备 |
| | | if (deviceUI.CommonDevice.DeviceEpoint != common.DeviceEpoint || deviceUI.CommonDevice.DeviceAddr != common.DeviceAddr) |
| | | { |
| | | return; |
| | | } |
| | | var rollerShade = deviceUI.CommonDevice as Rollershade; |
| | | rollerShade.IsOnline = common.IsOnline; |
| | | rollerShadeIMG.IsSelected = rollerShade.IsOnline == 1; |
| | | rollerShade.LastDateTime = DateTime.Now; |
| | | //var deviceUI = SeekBar.Tag as DeviceUI; |
| | | ////设备为空 |
| | | //if (deviceUI.CommonDevice == null) |
| | | //{ |
| | | // return; |
| | | //} |
| | | ////是否为当前设备 |
| | | //if (deviceUI.CommonDevice.DeviceEpoint != common.DeviceEpoint || deviceUI.CommonDevice.DeviceAddr != common.DeviceAddr) |
| | | //{ |
| | | // return; |
| | | //} |
| | | //var rollerShade = deviceUI.CommonDevice as Rollershade; |
| | | //rollerShade.IsOnline = (common as Rollershade).IsOnline; |
| | | //rollerShadeIMG.IsSelected = rollerShade.IsOnline == 1; |
| | | //rollerShade.LastDateTime = DateTime.Now; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | { |
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | ZigBee.Device.ZbGateway.StatusList.Remove(this); |
| | | action(); |
| | | action = null; |
| | | //action(); |
| | | //action = null; |
| | | RemoveUpdateControlDeviceStatuAction(); |
| | | base.RemoveFromParent(); |
| | | } |
| | |
| | | #region ◆ 显示界面________________________ |
| | | |
| | | /// <summary> |
| | | /// 显示卷帘控制界面 |
| | | /// 显示界面 |
| | | /// </summary> |
| | | public void Show(DeviceUI device, Shared.Common.Room room) |
| | | /// <param name="dev">Device.</param> |
| | | /// <param name="room">Room.</param> |
| | | public void Show(DeviceUI dev, Shared.Common.Room room) |
| | | { |
| | | #region topview |
| | | var topBGView = new FrameLayout()
{
Height = Application.GetRealHeight(CommonPage.Navigation_Height),
BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor
};
AddChidren(topBGView);
var topView = new FrameLayout()
{
Y = Application.GetRealHeight(CommonPage.NavigationTitle_Y),
Height = Application.GetRealHeight(CommonPage.Navigation_Height - CommonPage.NavigationTitle_Y),
BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor,
};
AddChidren(topView); |
| | | |
| | | moreBtn = new Device.CommonForm.SelectedStatuButton() |
| | | { |
| | | X = Application.GetRealWidth(CommonPage.AppRealWidth - 150), |
| | | Width = Application.GetMinReal(110), |
| | | Height = Application.GetMinReal(110), |
| | | Gravity = Gravity.CenterVertical, |
| | | UnSelectedImagePath = "Item/More.png", |
| | | SelectedImagePath = "Item/MoreSelected.png", |
| | | }; |
| | | topView.AddChidren(moreBtn); |
| | | |
| | | var back = new Device.CommonForm.BackButton() { };
topView.AddChidren(back); |
| | | back.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | this.RemoveFromParent(); |
| | | }; |
| | | if (device == null || device.CommonDevice == null || room == null) |
| | | { |
| | | return; |
| | | } |
| | | this.device = device; |
| | | this.zbGateway = this.device.CommonDevice.Gateway; |
| | | device = dev; |
| | | zbGateway = this.device.CommonDevice.Gateway; |
| | | this.room = room; |
| | | |
| | | AddTop(); |
| | | |
| | | AddBodyView(device); |
| | | |
| | | |
| | | var rollerShade = device.CommonDevice as ZigBee.Device.Rollershade; |
| | | //不上非远程 |
| | |
| | | { |
| | | UserHomeView.ReadStatus(rollerShade, () => |
| | | { |
| | | rollerShade.ReadWcdCurrentPositionLiftPercentage(); |
| | | rollerShade.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); |
| | | rollerShade.ReadWcdCurrentPositionLiftPercentage(); |
| | | }); |
| | | } |
| | | else |
| | |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region midFL |
| | | var midFL = new FrameLayout() |
| | | { |
| | | Height = Application.GetRealHeight(CommonPage.AppRealHeight - CommonPage.Navigation_Height), |
| | | Y = topView.Bottom, |
| | | BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor, |
| | | }; |
| | | this.AddChidren(midFL); |
| | | |
| | | var itemView = new FrameLayout() |
| | | { |
| | | Y = Application.GetRealHeight(50), |
| | | Width = Application.GetRealWidth(CommonPage.AppRealWidth - CommonPage.XLeft*2), |
| | | Height = midFL.Height - Application.GetRealHeight(100), |
| | | Radius = CommonPage.BigFormRadius, |
| | | Gravity = Gravity.CenterHorizontal, |
| | | BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor |
| | | }; |
| | | midFL.AddChidren(itemView); |
| | | var rollerShadeView = new FrameLayout() |
| | | { |
| | | X = 2, |
| | | Y = 2, |
| | | Width = itemView.Width - 4, |
| | | Height = itemView.Height - Application.GetRealHeight(130), |
| | | BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor, |
| | | Tag=device |
| | | }; |
| | | itemView.AddChidren(rollerShadeView); |
| | | |
| | | collectionBtn = new Button() |
| | | { |
| | | X = rollerShadeView.Width - Application.GetRealWidth(130), |
| | | Y = Application.GetRealHeight(20), |
| | | Width = Application.GetMinReal(110), |
| | | Height = Application.GetMinReal(110), |
| | | UnSelectedImagePath = "Item/Collection.png", |
| | | SelectedImagePath = "Item/CollectionSelected.png" |
| | | }; |
| | | rollerShadeView.AddChidren(collectionBtn); |
| | | |
| | | rollerShadeIMG = new Button() |
| | | { |
| | | Y = Application.GetRealHeight(80), |
| | | Height = Application.GetMinRealAverage(240), |
| | | Width = Application.GetMinRealAverage(240), |
| | | Gravity = Gravity.CenterHorizontal, |
| | | UnSelectedImagePath = device.IconPath, |
| | | SelectedImagePath = device.OnlineIconPath, |
| | | IsSelected=rollerShade.IsOnline==1, |
| | | Tag=DeviceStatus_Online |
| | | }; |
| | | rollerShadeView.AddChidren(rollerShadeIMG); |
| | | |
| | | var rollerShadeName = new Button() |
| | | { |
| | | Y = rollerShadeIMG.Bottom, |
| | | Height = Application.GetRealHeight(85), |
| | | Width = rollerShadeView.Width - Application.GetRealWidth(100), |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Text = device.CommonDevice.DeviceEpointName, |
| | | TextColor = ZigbeeColor.Current.GXCTextBlackColor |
| | | }; |
| | | rollerShadeView.AddChidren(rollerShadeName); |
| | | //滑条 |
| | | SeekBar = new HorizontalSeekBar() |
| | | { |
| | | Y = rollerShadeName.Bottom + Application.GetRealHeight(350), |
| | | Width = rollerShadeView.Width - Application.GetRealWidth(100), |
| | | Height = Application.GetRealHeight(80), |
| | | Gravity = Gravity.CenterHorizontal, |
| | | BackgroundColor = ZigbeeColor.Current.GXCSliderUnSelectedColor, |
| | | ThumbColor = ZigbeeColor.Current.GXCButtonBlueColor, |
| | | BorderColor = ZigbeeColor.Current.GXCButtonBlueColor, |
| | | ProgressColor = ZigbeeColor.Current.GXCButtonBlueColor, |
| | | Max = 100, |
| | | Tag=device, |
| | | Progress = rollerShade.WcdCurrentPositionLiftPercentage, |
| | | SleepTime=sleepSpan |
| | | }; |
| | | rollerShadeView.AddChidren(SeekBar); |
| | | |
| | | seekBarTitle = new Button() |
| | | { |
| | | Y = rollerShadeName.Bottom + Application.GetRealHeight(250), |
| | | Width = Application.GetRealWidth(300), |
| | | Height = Application.GetRealHeight(80), |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Text = $"{SeekBar.Progress}%", |
| | | TextColor = ZigbeeColor.Current.GXCTextBlackColor, |
| | | Tag=device |
| | | }; |
| | | rollerShadeView.AddChidren(seekBarTitle); |
| | | |
| | | downBtn = new Device.CommonForm.SelectedStatuButton() |
| | | { |
| | | X = Application.GetRealWidth(50), |
| | | Y = Application.GetRealHeight(300) + SeekBar.Bottom, |
| | | Width = Application.GetMinRealAverage(160), |
| | | Height = Application.GetMinRealAverage(160), |
| | | UnSelectedImagePath = "WindowCovering/RollerShadeClose.png", |
| | | SelectedImagePath = "WindowCovering/RollerShadeCloseSelected.png", |
| | | //IsSelected = !((device.CommonDevice as ZigBee.Device.Rollershade).WcdCurrentPositionLiftPercentage > 0) |
| | | }; |
| | | rollerShadeView.AddChidren(downBtn); |
| | | |
| | | stopBtn = new Device.CommonForm.SelectedStatuButton() |
| | | { |
| | | X = Application.GetRealWidth(200) + downBtn.Right, |
| | | Y = Application.GetRealHeight(300) + SeekBar.Bottom, |
| | | Width = Application.GetMinRealAverage(160), |
| | | Height = Application.GetMinRealAverage(160), |
| | | UnSelectedImagePath = "WindowCovering/RollerShadeStop.png", |
| | | SelectedImagePath = "WindowCovering/RollerShadeStopSelected.png", |
| | | }; |
| | | rollerShadeView.AddChidren(stopBtn); |
| | | |
| | | upBtn = new Device.CommonForm.SelectedStatuButton() |
| | | { |
| | | X = Application.GetRealWidth(200) + stopBtn.Right, |
| | | Y = Application.GetRealHeight(300) + SeekBar.Bottom, |
| | | Width = Application.GetMinRealAverage(160), |
| | | Height = Application.GetMinRealAverage(160), |
| | | UnSelectedImagePath = "WindowCovering/RollerShadeOpen.png", |
| | | SelectedImagePath = "WindowCovering/RollerShadeOpenSelected.png", |
| | | //IsSelected = (device.CommonDevice as ZigBee.Device.Rollershade).WcdCurrentPositionLiftPercentage > 0 |
| | | }; |
| | | rollerShadeView.AddChidren(upBtn); |
| | | |
| | | roomBtn = new Button() |
| | | { |
| | | X = Application.GetRealWidth(50), |
| | | Y = Application.GetRealHeight(25) + rollerShadeView.Bottom, |
| | | Width = Application.GetMinReal(80), |
| | | Height = Application.GetMinReal(80), |
| | | UnSelectedImagePath = "Item/Room.png", |
| | | SelectedImagePath = "Item/RoomSelected.png" |
| | | }; |
| | | itemView.AddChidren(roomBtn); |
| | | |
| | | roomName = new Button() |
| | | { |
| | | X = roomBtn.Right + Application.GetRealWidth(20), |
| | | Y = roomBtn.Y, |
| | | Width = Application.GetRealWidth(400), |
| | | Height = Application.GetRealHeight(80), |
| | | Text = room.Name, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = ZigbeeColor.Current.GXCTextBlackColor, |
| | | SelectedTextColor = ZigbeeColor.Current.GXCTextBlueColor |
| | | }; |
| | | itemView.AddChidren(roomName); |
| | | |
| | | var dev =Shared.Common.Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FileName); |
| | | if (dev == null) |
| | | var de = Shared.Common.Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FileName); |
| | | if (de == null) |
| | | { |
| | | collectionBtn.IsSelected = false; |
| | | } |
| | |
| | | collectionBtn.IsSelected = true; |
| | | } |
| | | |
| | | if (rollerShade.WcdType == -1) |
| | | |
| | | BindEvent(); |
| | | |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region ◆ Add______________________________ |
| | | |
| | | /// <summary> |
| | | /// AddTop |
| | | /// </summary> |
| | | public void AddTop() |
| | | { |
| | | var top = new TopFrameLayout(); |
| | | AddChidren(top); |
| | | top.InitTopview(); |
| | | top.backButton.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | RemoveFromParent(); |
| | | }; |
| | | |
| | | var sharedBtn = new Button |
| | | { |
| | | X = Application.GetRealWidth(850), |
| | | Width = Application.GetMinReal(69), |
| | | Height = Application.GetMinReal(69), |
| | | Gravity = Gravity.CenterVertical, |
| | | UnSelectedImagePath = "Item/Shared.png" |
| | | }; |
| | | top.topView.AddChidren(sharedBtn); |
| | | |
| | | var moreBtn = new Button |
| | | { |
| | | X = Application.GetRealWidth(953), |
| | | Width = Application.GetMinReal(69), |
| | | Height = Application.GetMinReal(69), |
| | | Gravity = Gravity.CenterVertical, |
| | | UnSelectedImagePath = "Item/More.png" |
| | | }; |
| | | top.topView.AddChidren(moreBtn); |
| | | |
| | | moreBtn.MouseUpEventHandler += More; |
| | | |
| | | } |
| | | /// <summary> |
| | | /// AddBodyView |
| | | /// </summary> |
| | | public void AddBodyView(DeviceUI device) |
| | | { |
| | | bodyFrameLayout = new FrameLayout() |
| | | { |
| | | Y = Application.GetRealHeight(184), |
| | | Height = Application.GetRealHeight(1737), |
| | | BackgroundColor = ZigbeeColor.Current.GXCGrayBackgroundColor, |
| | | }; |
| | | AddChidren(bodyFrameLayout); |
| | | |
| | | var itemView = new FrameLayout() |
| | | { |
| | | Y = Application.GetRealHeight(115), |
| | | Width = Application.GetRealWidth(965), |
| | | Height = Application.GetRealHeight(1316), |
| | | Radius = (uint)Application.GetRealHeight(CommonFormResouce.BigFormRadius), |
| | | Gravity = Gravity.CenterHorizontal, |
| | | BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor |
| | | }; |
| | | bodyFrameLayout.AddChidren(itemView); |
| | | |
| | | collectionBtn = new Button() |
| | | { |
| | | X = Application.GetRealWidth(850), |
| | | Y = Application.GetRealHeight(46), |
| | | Width = Application.GetMinReal(69), |
| | | Height = Application.GetMinReal(69), |
| | | UnSelectedImagePath = "Item/Collection.png", |
| | | SelectedImagePath = "Item/CollectionSelected.png" |
| | | }; |
| | | itemView.AddChidren(collectionBtn); |
| | | |
| | | var deviceNameBtn = new Button() |
| | | { |
| | | Y = Application.GetRealHeight(46), |
| | | Width = Application.GetRealWidth(500), |
| | | Height = Application.GetRealHeight(60), |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Text = device.CommonDevice.DeviceEpointName, |
| | | TextColor = ZigbeeColor.Current.GXCTextBlackColor, |
| | | TextSize = 15 |
| | | }; |
| | | itemView.AddChidren(deviceNameBtn); |
| | | |
| | | StatuBtn = new Button |
| | | { |
| | | Y = Application.GetRealHeight(118), |
| | | Width = Application.GetRealWidth(600), |
| | | Height = Application.GetRealHeight(60), |
| | | Gravity = Gravity.CenterHorizontal, |
| | | TextColor = ZigbeeColor.Current.GXCTextGrayColor, |
| | | Text = $"{Language.StringByID(R.MyInternationalizationString.Current)} {device.GetDeviceStatu()}" |
| | | }; |
| | | itemView.AddChidren(StatuBtn); |
| | | |
| | | |
| | | OpenOrUpBtn = new Button |
| | | { |
| | | X = Application.GetRealWidth(253), |
| | | Y = Application.GetRealHeight(994), |
| | | Width = Application.GetMinRealAverage(81), |
| | | Height = Application.GetMinRealAverage(81) |
| | | }; |
| | | itemView.AddChidren(OpenOrUpBtn); |
| | | OpenOrUpBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | (device.CommonDevice as ZigBee.Device.Rollershade).CurtainUpDownStopControl(0); |
| | | }; |
| | | |
| | | StopBtn = new Button |
| | | { |
| | | X = Application.GetRealWidth(441), |
| | | Y=Application.GetRealHeight(994), |
| | | Width = Application.GetMinRealAverage(81), |
| | | Height = Application.GetMinRealAverage(81), |
| | | SelectedImagePath = "RollerShade/StopSelected.png", |
| | | UnSelectedImagePath = "RollerShade/Stop.png", |
| | | }; |
| | | itemView.AddChidren(StopBtn); |
| | | StopBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | (device.CommonDevice as ZigBee.Device.Rollershade).CurtainUpDownStopControl(2); |
| | | }; |
| | | |
| | | CloseOrDownBtn = new Button |
| | | { |
| | | X = Application.GetRealWidth(631), |
| | | Y = Application.GetRealHeight(994), |
| | | Width = Application.GetMinRealAverage(81), |
| | | Height = Application.GetMinRealAverage(81) |
| | | }; |
| | | itemView.AddChidren(CloseOrDownBtn); |
| | | CloseOrDownBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | (device.CommonDevice as ZigBee.Device.Rollershade).CurtainUpDownStopControl(1); |
| | | }; |
| | | |
| | | SetRollerShadeIcon((device.CommonDevice as Rollershade).WcdType); |
| | | if ((device.CommonDevice as Rollershade).WcdType == -1) |
| | | { |
| | | CommonPage.Loading.Start(); |
| | | new System.Threading.Thread(() => |
| | | { |
| | | ZigBee.Device.Rollershade.ReadWcdTypeAction(rollerShade, () => |
| | | Rollershade.ReadWcdTypeAction(device.CommonDevice, () => |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | if (rollerShade.WcdType == 0) |
| | | { |
| | | downBtn.UnSelectedImagePath = "WindowCovering/RollerShadeDown.png"; |
| | | downBtn.SelectedImagePath = "WindowCovering/RollerShadeDownSelected.png"; |
| | | upBtn.UnSelectedImagePath = "WindowCovering/RollerShadeUp.png"; |
| | | upBtn.SelectedImagePath = "WindowCovering/RollerShadeUpSelected.png"; |
| | | } |
| | | else |
| | | { |
| | | downBtn.UnSelectedImagePath = "WindowCovering/RollerShadeClose.png"; |
| | | downBtn.SelectedImagePath = "WindowCovering/RollerShadeCloseSelected.png"; |
| | | upBtn.UnSelectedImagePath = "WindowCovering/RollerShadeOpen.png"; |
| | | upBtn.SelectedImagePath = "WindowCovering/RollerShadeOpenSelected.png"; |
| | | } |
| | | SetRollerShadeIcon((device.CommonDevice as Rollershade).WcdType); |
| | | CommonPage.Loading.Hide(); |
| | | }); |
| | | }); |
| | | }) |
| | | { IsBackground = true }.Start(); |
| | | } |
| | | else if(rollerShade.WcdType == 0) |
| | | var roomBG = new Button |
| | | { |
| | | downBtn.UnSelectedImagePath = "WindowCovering/RollerShadeDown.png"; |
| | | downBtn.SelectedImagePath = "WindowCovering/RollerShadeDownSelected.png"; |
| | | upBtn.UnSelectedImagePath = "WindowCovering/RollerShadeUp.png"; |
| | | upBtn.SelectedImagePath = "WindowCovering/RollerShadeUpSelected.png"; |
| | | } |
| | | else |
| | | Y = Application.GetRealHeight(1178 - 50), |
| | | Height = Application.GetRealHeight(138 + 50), |
| | | BackgroundColor = ZigbeeColor.Current.GXCBlackBackgroundColor, |
| | | Radius = (uint)Application.GetRealHeight(CommonFormResouce.BigFormRadius) |
| | | }; |
| | | itemView.AddChidren(roomBG); |
| | | |
| | | var roomBG2 = new Button |
| | | { |
| | | downBtn.UnSelectedImagePath = "WindowCovering/RollerShadeClose.png"; |
| | | downBtn.SelectedImagePath = "WindowCovering/RollerShadeCloseSelected.png"; |
| | | upBtn.UnSelectedImagePath = "WindowCovering/RollerShadeOpen.png"; |
| | | upBtn.SelectedImagePath = "WindowCovering/RollerShadeOpenSelected.png"; |
| | | } |
| | | #endregion |
| | | Y = Application.GetRealHeight(1178 - 50), |
| | | Height = Application.GetRealHeight(50), |
| | | BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor, |
| | | }; |
| | | itemView.AddChidren(roomBG2); |
| | | |
| | | roomBtn = new Button() |
| | | { |
| | | X = Application.GetRealWidth(CommonFormResouce.X_Left), |
| | | Y = Application.GetRealHeight(1207), |
| | | Width = Application.GetMinReal(80), |
| | | Height = Application.GetMinReal(80), |
| | | UnSelectedImagePath = "Item/Room.png" |
| | | }; |
| | | itemView.AddChidren(roomBtn); |
| | | |
| | | BindEvent(); |
| | | roomName = new Button() |
| | | { |
| | | X = Application.GetRealWidth(150), |
| | | Y = Application.GetRealHeight(1224), |
| | | Width = Application.GetRealWidth(400), |
| | | Height = Application.GetRealHeight(50), |
| | | Text = room.Name, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = ZigbeeColor.Current.GXCTextWhiteColor |
| | | }; |
| | | itemView.AddChidren(roomName); |
| | | } |
| | | |
| | | #endregion |
| | |
| | | /// </summary> |
| | | private void BindEvent() |
| | | { |
| | | upBtn.MouseUpEventHandler += Up; |
| | | stopBtn.MouseUpEventHandler += Stop; |
| | | downBtn.MouseUpEventHandler += Down; |
| | | SeekBar.ProgressChanged += SeekBar_ProgressChange; |
| | | collectionBtn.MouseUpEventHandler += Collection; |
| | | moreBtn.MouseUpEventHandler += More; |
| | | roomBtn.MouseUpEventHandler += BackToRoomHandler; |
| | | roomName.MouseUpEventHandler += BackToRoomHandler; |
| | | //upBtn.MouseUpEventHandler += Up; |
| | | //stopBtn.MouseUpEventHandler += Stop; |
| | | //downBtn.MouseUpEventHandler += Down; |
| | | //SeekBar.ProgressChanged += SeekBar_ProgressChange; |
| | | //collectionBtn.MouseUpEventHandler += Collection; |
| | | //moreBtn.MouseUpEventHandler += More; |
| | | //roomBtn.MouseUpEventHandler += BackToRoomHandler; |
| | | //roomName.MouseUpEventHandler += BackToRoomHandler; |
| | | } |
| | | |
| | | #endregion |
| | |
| | | /// <param name="mouseEventArgs">The ${ParameterType} instance containing the event data.</param> |
| | | private void SeekBar_ProgressChange(object sender, int mouseEventArgs) |
| | | { |
| | | seekBarTitle.Text = $"{SeekBar.Progress}%"; |
| | | (device.CommonDevice as ZigBee.Device.Rollershade).WcdGoToTiltValue(SeekBar.Progress); |
| | | //seekBarTitle.Text = $"{SeekBar.Progress}%"; |
| | | //(device.CommonDevice as ZigBee.Device.Rollershade).WcdGoToTiltValue(SeekBar.Progress); |
| | | } |
| | | |
| | | |
| | |
| | | }; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// WcdType=4:开合帘 |
| | | /// WcdType=0:卷帘 |
| | | /// </summary> |
| | | /// <param name="type"></param> |
| | | public void SetRollerShadeIcon(int type) |
| | | { |
| | | if (type == 0) |
| | | { |
| | | OpenOrUpBtn.UnSelectedImagePath = "RollerShade/Up.png"; |
| | | OpenOrUpBtn.SelectedImagePath = "RollerShade/UpSelected.png"; |
| | | |
| | | CloseOrDownBtn.UnSelectedImagePath = "RollerShade/Down.png"; |
| | | CloseOrDownBtn.SelectedImagePath = "RollerShade/DownSelected.png"; |
| | | } |
| | | else |
| | | { |
| | | OpenOrUpBtn.UnSelectedImagePath = "RollerShade/Open.png"; |
| | | OpenOrUpBtn.SelectedImagePath = "RollerShade/OpenSelected.png"; |
| | | |
| | | CloseOrDownBtn.UnSelectedImagePath = "RollerShade/Close.png"; |
| | | CloseOrDownBtn.SelectedImagePath = "RollerShade/CloseSelected.png"; |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region ◆ 收藏到主页_______________________ |