New file |
| | |
| | | using System;
|
| | | using System.Collections.Generic;
|
| | | using System.Text;
|
| | | using ZigBee.Device;
|
| | |
|
| | | namespace Shared.Phone.UserCenter.GatewayManage
|
| | | {
|
| | | /// <summary>
|
| | | /// 网关产品信息的界面
|
| | | /// </summary>
|
| | | public class GatewayProductInfoForm : EditorCommonForm
|
| | | {
|
| | | #region ■ 变量声明___________________________
|
| | |
|
| | | /// <summary>
|
| | | /// 当前选择的网关
|
| | | /// </summary>
|
| | | private ZbGateway zbGateway = null;
|
| | |
|
| | | #endregion
|
| | |
|
| | | #region ■ 初始化_____________________________
|
| | |
|
| | | /// <summary>
|
| | | /// 画面显示(底层会固定调用此方法,借以完成画面创建)
|
| | | /// </summary>
|
| | | /// <param name="i_zbGateway">当前选择的网关</param>
|
| | | public void ShowForm(ZbGateway i_zbGateway)
|
| | | {
|
| | | this.zbGateway = i_zbGateway;
|
| | |
|
| | | //设置标题信息
|
| | | base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uAddGateway));
|
| | |
|
| | | //初始化中部控件
|
| | | this.InitMiddleFrame();
|
| | | }
|
| | |
|
| | | /// <summary>
|
| | | /// 初始化中部控件
|
| | | /// </summary>
|
| | | private void InitMiddleFrame()
|
| | | {
|
| | | //清空bodyFrame
|
| | | this.ClearBodyFrame();
|
| | |
|
| | | var listBackControl = new VerticalFrameControl();
|
| | | listBackControl.Height = bodyFrameLayout.Height;
|
| | | bodyFrameLayout.AddChidren(listBackControl);
|
| | |
|
| | | bool gateWayExist = HdlGatewayLogic.Current.IsGatewayExist(zbGateway);
|
| | |
|
| | | var framePic = new FrameLayout();
|
| | | framePic.Width = Application.GetRealWidth(855);
|
| | | framePic.Height = Application.GetRealHeight(570);
|
| | | framePic.Gravity = Gravity.CenterHorizontal;
|
| | | framePic.Y = Application.GetRealHeight(58);
|
| | | listBackControl.frameTable.AddChidren(framePic);
|
| | | //图片
|
| | | var btnImage = new PicViewControl(380, 328, true);
|
| | | btnImage.Gravity = Gravity.Center;
|
| | | btnImage.UnSelectedImagePath = "Gateway/RealGateway.png";
|
| | | framePic.AddChidren(btnImage);
|
| | |
|
| | | //初始化桌布
|
| | | var tableContr = new InformationEditorControl();
|
| | | var listview = tableContr.InitControl(listBackControl.frameTable, Language.StringByID(R.MyInternationalizationString.uDeviceEditor), 1028);
|
| | |
|
| | | //设备备注(如果这个网关没有绑定的话,只允许查看,不能更改)
|
| | | string caption = Language.StringByID(R.MyInternationalizationString.uDeviceNote);
|
| | | string deviceName = HdlGatewayLogic.Current.GetGatewayName(zbGateway);
|
| | | FrameCaptionInputControl btnGateName = null;
|
| | | if (gateWayExist == true)
|
| | | {
|
| | | btnGateName = new FrameCaptionInputControl(caption, deviceName, listview.rowSpace / 2);
|
| | | listview.AddChidren(btnGateName);
|
| | | btnGateName.InitControl();
|
| | | //划线
|
| | | btnGateName.AddBottomLine();
|
| | | btnGateName.txtInput.FinishInputEvent += () =>
|
| | | {
|
| | | string oldName = HdlGatewayLogic.Current.GetGatewayName(zbGateway);
|
| | | if (btnGateName.Text == string.Empty)
|
| | | {
|
| | | btnGateName.Text = oldName;
|
| | | }
|
| | | if (oldName != btnGateName.Text)
|
| | | {
|
| | | //修改名字
|
| | | this.SetGatewayName(btnGateName.Text, false);
|
| | | }
|
| | | };
|
| | | }
|
| | | else
|
| | | {
|
| | | var btnNote = new FrameCaptionViewControl(caption, deviceName, listview.rowSpace / 2);
|
| | | btnNote.UseClickStatu = false;
|
| | | listview.AddChidren(btnNote);
|
| | | btnNote.InitControl();
|
| | | //划线
|
| | | btnNote.AddBottomLine();
|
| | | }
|
| | |
|
| | | //设备类型
|
| | | caption = Language.StringByID(R.MyInternationalizationString.uDeviceType);
|
| | | var btnType = new FrameCaptionViewControl(caption, string.Empty, listview.rowSpace / 2);
|
| | | btnType.UseClickStatu = false;
|
| | | listview.AddChidren(btnType);
|
| | | btnType.InitControl();
|
| | | //划线
|
| | | btnType.AddBottomLine();
|
| | | HdlGatewayLogic.Current.SetGatewayImageText(btnType.txtView, zbGateway);
|
| | |
|
| | | //所属住宅
|
| | | caption = Language.StringByID(R.MyInternationalizationString.uBelongResidence);
|
| | | var btnBeloneArea = new FrameCaptionViewControl(caption, Common.Config.Instance.Home.Name, listview.rowSpace / 2);
|
| | | btnBeloneArea.UseClickStatu = false;
|
| | | listview.AddChidren(btnBeloneArea);
|
| | | btnBeloneArea.InitControl();
|
| | | //划线
|
| | | btnBeloneArea.AddBottomLine();
|
| | |
|
| | | //完成初始化桌布
|
| | | tableContr.FinishInitControl();
|
| | |
|
| | | if (gateWayExist == true)
|
| | | {
|
| | | //更多配置
|
| | | var btnHelp = new NormalViewControl(listBackControl.frameTable.Width, Application.GetRealHeight(49), false);
|
| | | btnHelp.Y = Application.GetRealHeight(1388);
|
| | | btnHelp.TextSize = 12;
|
| | | btnHelp.TextAlignment = TextAlignment.Center;
|
| | | btnHelp.TextColor = UserCenterColor.Current.TextOrangeColor;
|
| | | btnHelp.Text = Language.StringByID(R.MyInternationalizationString.uMoreSettion);
|
| | | btnHelp.ButtonClickEvent += (sender, e) =>
|
| | | {
|
| | | var form = new GatewayManage.GatewayInfoEditorForm();
|
| | | this.AddFromAndRemoveNowForm(form, zbGateway);
|
| | | };
|
| | | listBackControl.frameTable.AddChidren(btnHelp);
|
| | | //底线
|
| | | int lineWidth = btnHelp.GetRealWidthByText();
|
| | | var btnLine = new NormalViewControl(lineWidth, ControlCommonResourse.BottomLineHeight, false);
|
| | | btnLine.BackgroundColor = UserCenterColor.Current.TextOrangeColor;
|
| | | btnLine.Gravity = Gravity.CenterHorizontal;
|
| | | btnLine.Y = btnHelp.Bottom - Application.GetRealHeight(8);
|
| | | listBackControl.frameTable.AddChidren(btnLine);
|
| | | }
|
| | |
|
| | | //完成按钮
|
| | | var btnFinish = new BottomClickButton();
|
| | | btnFinish.TextID = R.MyInternationalizationString.uFinish;
|
| | | bodyFrameLayout.AddChidren(btnFinish);
|
| | | btnFinish.MouseUpEventHandler += (sender, e) =>
|
| | | {
|
| | | if (gateWayExist == false)
|
| | | {
|
| | | //如果这个网关还没有绑定,则直接关闭界面
|
| | | this.CloseForm();
|
| | | return;
|
| | | }
|
| | | //完成按钮按下
|
| | | this.FinishButtonClick(btnGateName.Text);
|
| | | };
|
| | | }
|
| | |
|
| | | #endregion
|
| | |
|
| | | #region ■ 完成按钮按下_______________________
|
| | |
|
| | | /// <summary>
|
| | | /// 完成按钮按下
|
| | | /// </summary>
|
| | | /// <param name="gwName">网关名字</param>
|
| | | private void FinishButtonClick(string gwName)
|
| | | {
|
| | | if (string.IsNullOrEmpty(gwName) == true)
|
| | | {
|
| | | //请输入网关名称
|
| | | string msg = Language.StringByID(R.MyInternationalizationString.uGatewayNameMastInput);
|
| | | this.ShowMassage(ShowMsgType.Error, msg);
|
| | | return;
|
| | | }
|
| | | HdlThreadLogic.Current.RunThread(() =>
|
| | | {
|
| | | //修改名字
|
| | | this.SetGatewayName(gwName, true);
|
| | | });
|
| | | }
|
| | |
|
| | | #endregion
|
| | |
|
| | | #region ■ 修改名字___________________________
|
| | |
|
| | | /// <summary>
|
| | | /// 设置网关名字
|
| | | /// </summary>
|
| | | /// <param name="gatewayName">网关名称</param>
|
| | | /// <param name="closeForm">关闭界面</param>
|
| | | private async void SetGatewayName(string gatewayName, bool closeForm)
|
| | | {
|
| | | //打开进度条
|
| | | this.ShowProgressBar();
|
| | | //修改本地网关名
|
| | | var result = await HdlGatewayLogic.Current.ReName(zbGateway, gatewayName);
|
| | | //关闭进度条
|
| | | this.CloseProgressBar();
|
| | |
|
| | | //网关修改失败
|
| | | if (result == false)
|
| | | {
|
| | | return;
|
| | | }
|
| | | if (closeForm == true)
|
| | | {
|
| | | HdlThreadLogic.Current.RunMain(() =>
|
| | | {
|
| | | //关闭自身
|
| | | this.CloseForm();
|
| | | //是否是主页添加
|
| | | if (UserCenterResourse.DicActionForm.ContainsKey("GatewayListForm") == false)
|
| | | {
|
| | | var form = new GatewayAddSuccessForm();
|
| | | form.AddForm();
|
| | | }
|
| | | });
|
| | | }
|
| | | }
|
| | | #endregion
|
| | | }
|
| | | }
|