using System; using System.Collections.Generic; using ZigBee.Device; namespace Shared.Phone.UserCenter.Direction { /// /// 网关添加可能的设备类型的一览画面, /// 它从[DeviceManagementMainForm]画面打开 /// public class AddDeviceTypeListForm : UserCenterCommonForm { /// /// 列表控件 /// private VerticalScrolViewLayout listView = null; /// /// 画面显示(底层会固定调用此方法,借以完成画面创建) /// public void ShowForm() { //设定标题 base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uDeviceType)); //初始化中部控件 this.InitMiddleFrame(); } /// /// 初始化中部控件 /// private void InitMiddleFrame() { listView = new VerticalScrolViewLayout(); listView.Height = bodyFrameLayout.Height; bodyFrameLayout.AddChidren(listView); string objectText = string.Empty; string unSelectPic = string.Empty; string selectPic = string.Empty; //智能空气开关 objectText = Language.StringByID(R.MyInternationalizationString.uAirSwitch); unSelectPic = "Device/CloudContrAirSwitch.png"; selectPic = "Device/CloudContrAirSwitchSelected.png"; this.AddMenuRow(objectText, unSelectPic, selectPic, DeviceConcreteType.CloudContr_AirSwitch); //窗帘电机 objectText = Language.StringByID(R.MyInternationalizationString.uCurtainMotor); unSelectPic = "Device/AutoOpenCurtain.png"; selectPic = "Device/AutoOpenCurtainSelected.png"; this.AddMenuRow(objectText, unSelectPic, selectPic, DeviceConcreteType.AutoOpen_Curtain); //2按键触摸面板 objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDefultName202); var arry = objectText.Split(new string[] { "(" }, StringSplitOptions.RemoveEmptyEntries); objectText = arry[0].Trim(); unSelectPic = "Device/TwoButtonPanel.png"; selectPic = "Device/TwoButtonPanelSelected.png"; this.AddMenuRow(objectText, unSelectPic, selectPic, DeviceConcreteType.Two_ButtonPanel); //3按键触摸面板 objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDefultName201); arry = objectText.Split(new string[] { "(" }, StringSplitOptions.RemoveEmptyEntries); objectText = arry[0].Trim(); unSelectPic = "Device/ThreeButtonPanel.png"; selectPic = "Device/ThreeButtonPanelSelected.png"; this.AddMenuRow(objectText, unSelectPic, selectPic, DeviceConcreteType.Three_ButtonPanel); //4按键触摸面板 objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDefultName200); arry = objectText.Split(new string[] { "(" }, StringSplitOptions.RemoveEmptyEntries); objectText = arry[0].Trim(); unSelectPic = "Device/FourButtonPanel.png"; selectPic = "Device/FourButtonPanelSelected.png"; this.AddMenuRow(objectText, unSelectPic, selectPic, DeviceConcreteType.Four_ButtonPanel); //红外传感器 objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDefultName1303); unSelectPic = "Device/InfraredSensor.png"; selectPic = "Device/InfraredSensorSelected.png"; this.AddMenuRow(objectText, unSelectPic, selectPic, DeviceConcreteType.Pir_Sensor); ////第三方设备 //objectText = Language.StringByID(R.MyInternationalizationString.uThirdPartyDevice); //unSelectPic = "Device/Relay.png"; //selectPic = "Device/RelaySelected.png"; //deviceType = DeviceType.UnKown; //this.AddMenuRow(objectText, unSelectPic, selectPic, deviceType); } /// /// 添加菜单栏 /// /// 显示文本 /// 图片:非点亮 /// 图片:点亮 /// 设备具体类型 private void AddMenuRow(string objectText, string unSelectPic, string selectPic, DeviceConcreteType deviceType) { var rowLayout = new StatuRowLayout(listView); //图标 var btnIcon = new RowLeftIconView(); btnIcon.UnSelectedImagePath = unSelectPic; btnIcon.SelectedImagePath = selectPic; rowLayout.AddChidren(btnIcon); //设备 var btnObject = new RowCenterView(); btnObject.Text = objectText; rowLayout.AddChidren(btnObject); //添加向右的图标 rowLayout.AddRightIconControl(); rowLayout.MouseUpEvent += (sender, e) => { //第三方设备:直接进入配置设备阶段,因为也不知道它咋入网 if (deviceType == DeviceConcreteType.UnKownDevice) { var form = new Device.SearchDeviceForm(); this.AddForm(form); } else { //让设备入网的指示图画面 var form = new Direction.AddDeviceDirectionForm(); this.AddForm(form, deviceType); } }; } } }