using System;  
 | 
using System.Collections.Generic;  
 | 
using System.Text;  
 | 
using ZigBee.Device;  
 | 
  
 | 
namespace Shared.Phone.UserCenter.DevicePirSensor  
 | 
{  
 | 
    /// <summary>  
 | 
    /// pir传感器的调光模式的配置界面  
 | 
    /// </summary>  
 | 
    public class PirSensorDimmingModeForm : EditorCommonForm  
 | 
    {  
 | 
        #region ■ 变量声明___________________________  
 | 
  
 | 
        /// <summary>  
 | 
        /// 传感器的配置信息  
 | 
        /// </summary>  
 | 
        private IASZone.ConfigureParamates pirConfigure = null;  
 | 
  
 | 
        #endregion  
 | 
  
 | 
        #region ■ 初始化_____________________________  
 | 
  
 | 
        /// <summary>  
 | 
        /// 画面显示(底层会固定调用此方法,借以完成画面创建)  
 | 
        /// </summary>  
 | 
        /// <param name="i_pirConfigure">传感器的配置信息</param>  
 | 
        public void ShowForm(IASZone.ConfigureParamates i_pirConfigure)  
 | 
        {  
 | 
            this.pirConfigure = i_pirConfigure;  
 | 
  
 | 
            //设置头部信息  
 | 
            base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uDimmingMode));  
 | 
  
 | 
            //初始化中部信息  
 | 
            this.InitMiddleFrame();  
 | 
        }  
 | 
  
 | 
        /// <summary>  
 | 
        /// 初始化中部信息  
 | 
        /// </summary>  
 | 
        private void InitMiddleFrame()  
 | 
        {  
 | 
            //清空bodyFrame  
 | 
            this.ClearBodyFrame();  
 | 
  
 | 
            var frameBack = new FrameLayout();  
 | 
            frameBack.Height = Application.GetRealHeight(11);  
 | 
            frameBack.BackgroundColor = UserCenterColor.Current.White;  
 | 
            bodyFrameLayout.AddChidren(frameBack);  
 | 
  
 | 
            var listView = new VerticalListControl(12);  
 | 
            listView.Height = Application.GetRealHeight(700);  
 | 
            listView.Y = frameBack.Bottom;  
 | 
            listView.BackgroundColor = UserCenterColor.Current.White;  
 | 
            bodyFrameLayout.AddChidren(listView);  
 | 
  
 | 
            //添加开灯亮度行  
 | 
            this.AddTurnOnBrightnessRow(listView);  
 | 
  
 | 
            //添加慢启动行  
 | 
            this.AddSlowStartupRow(listView);  
 | 
  
 | 
            //添加慢关闭行  
 | 
            this.AddSlowCloseRow(listView);  
 | 
  
 | 
            //调整高度  
 | 
            listView.AdjustRealHeight(Application.GetRealHeight(23));  
 | 
  
 | 
            //保存  
 | 
            var btnSave = new BottomClickButton();  
 | 
            btnSave.TextID = R.MyInternationalizationString.uSave;  
 | 
            bodyFrameLayout.AddChidren(btnSave);  
 | 
            btnSave.ButtonClickEvent += (sender, e) =>  
 | 
            {  
 | 
                this.CloseForm();  
 | 
            };  
 | 
        }  
 | 
  
 | 
        #endregion  
 | 
  
 | 
        #region ■ 开灯亮度___________________________  
 | 
  
 | 
        /// <summary>  
 | 
        /// 添加开灯亮度行  
 | 
        /// </summary>  
 | 
        /// <param name="listView"></param>  
 | 
        private void AddTurnOnBrightnessRow(VerticalListControl listView)  
 | 
        {  
 | 
            var listSelect = new List<string>();  
 | 
            for (int i = 10; i <= 100; i += 10)  
 | 
            {  
 | 
                listSelect.Add(i + "%");  
 | 
            }  
 | 
            //让它处于10的整倍数  
 | 
            this.pirConfigure.dimmerLevel = (this.pirConfigure.dimmerLevel / 10) * 10;  
 | 
            int index = listSelect.IndexOf(this.pirConfigure.dimmerLevel + "%");  
 | 
  
 | 
            //开灯亮度  
 | 
            var row1 = new FrameRowControl(listView.rowSpace / 2);  
 | 
            listView.AddChidren(row1);  
 | 
            var btnCaption1 = row1.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uTurnOnBrightness), 400);  
 | 
            btnCaption1.TextSize = 15;  
 | 
            row1.AddRightArrow();  
 | 
            var btnStatu = row1.AddMostRightView(pirConfigure.dimmerLevel + "%", 400);  
 | 
            row1.AddBottomLine();  
 | 
            row1.ButtonClickEvent += (sender, e) =>  
 | 
            {  
 | 
                PickerView.Show(listSelect, (value) =>  
 | 
                {  
 | 
                    btnStatu.Text = listSelect[value];  
 | 
                    pirConfigure.dimmerLevel = Convert.ToInt32(listSelect[value].Replace("%", string.Empty));  
 | 
  
 | 
                }, index == -1 ? 0 : index, Language.StringByID(R.MyInternationalizationString.uBrightness),  
 | 
                Language.StringByID(R.MyInternationalizationString.uFinish),  
 | 
                Language.StringByID(R.MyInternationalizationString.uCancel));  
 | 
            };  
 | 
        }  
 | 
  
 | 
        #endregion  
 | 
  
 | 
        #region ■ 慢启动_____________________________  
 | 
  
 | 
        /// <summary>  
 | 
        /// 添加慢启动行  
 | 
        /// </summary>  
 | 
        /// <param name="listView"></param>  
 | 
        private void AddSlowStartupRow(VerticalListControl listView)  
 | 
        {  
 | 
            var listTime = new List<string>();  
 | 
            var miao = Language.StringByID(R.MyInternationalizationString.uSecond);  
 | 
            for (int i = 0; i <= 10; i++)  
 | 
            {  
 | 
                listTime.Add(i + miao);  
 | 
            }  
 | 
            int index = listTime.IndexOf(this.pirConfigure.dimmerOnTime + miao);  
 | 
  
 | 
            //慢启动  
 | 
            var row2 = new FrameRowControl(listView.rowSpace / 2);  
 | 
            listView.AddChidren(row2);  
 | 
            var btnCaption2 = row2.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uSlowStartup), 400);  
 | 
            btnCaption2.TextSize = 15;  
 | 
            row2.AddRightArrow();  
 | 
            var btnStatu2 = row2.AddMostRightView(pirConfigure.dimmerOnTime + miao, 400);  
 | 
            row2.AddBottomLine();  
 | 
            row2.ButtonClickEvent += (sender, e) =>  
 | 
            {  
 | 
                PickerView.Show(listTime, (value) =>  
 | 
                {  
 | 
                    btnStatu2.Text = listTime[value];  
 | 
                    pirConfigure.dimmerOnTime = Convert.ToInt32(listTime[value].Replace(miao, string.Empty));  
 | 
  
 | 
                }, index == -1 ? 0 : index, btnCaption2.Text,  
 | 
                Language.StringByID(R.MyInternationalizationString.uFinish),  
 | 
                Language.StringByID(R.MyInternationalizationString.uCancel));  
 | 
            };  
 | 
        }  
 | 
  
 | 
        #endregion  
 | 
  
 | 
        #region ■ 慢关闭_____________________________  
 | 
  
 | 
        /// <summary>  
 | 
        /// 添加慢关闭行  
 | 
        /// </summary>  
 | 
        /// <param name="listView"></param>  
 | 
        private void AddSlowCloseRow(VerticalListControl listView)  
 | 
        {  
 | 
            var listTime = new List<string>();  
 | 
            var miao = Language.StringByID(R.MyInternationalizationString.uSecond);  
 | 
            for (int i = 0; i <= 10; i++)  
 | 
            {  
 | 
                listTime.Add(i + miao);  
 | 
            }  
 | 
            int index = listTime.IndexOf(this.pirConfigure.dimmerOffTime + miao);  
 | 
  
 | 
            //慢关闭  
 | 
            var row3 = new FrameRowControl(listView.rowSpace / 2);  
 | 
            listView.AddChidren(row3);  
 | 
            var btnCaption3 = row3.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uSlowClose), 400);  
 | 
            btnCaption3.TextSize = 15;  
 | 
            row3.AddRightArrow();  
 | 
            var btnStatu3 = row3.AddMostRightView(pirConfigure.dimmerOffTime + miao, 400);  
 | 
            row3.ButtonClickEvent += (sender, e) =>  
 | 
            {  
 | 
                PickerView.Show(listTime, (value) =>  
 | 
                {  
 | 
                    btnStatu3.Text = listTime[value];  
 | 
                    pirConfigure.dimmerOffTime = Convert.ToInt32(listTime[value].Replace(miao, string.Empty));  
 | 
  
 | 
                }, index == -1 ? 0 : index, btnCaption3.Text,  
 | 
                Language.StringByID(R.MyInternationalizationString.uFinish),  
 | 
                Language.StringByID(R.MyInternationalizationString.uCancel));  
 | 
            };  
 | 
        }  
 | 
  
 | 
        #endregion  
 | 
    }  
 | 
}  
 |