From 592974441a4df95fffd9167c90192da1a390b1c2 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 06 六月 2023 11:51:12 +0800
Subject: [PATCH] Merge branch 'Dev-Branch'

---
 HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs |  664 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 660 insertions(+), 4 deletions(-)

diff --git a/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs b/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs
index 7b0dd8e..90902b3 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs
@@ -1,5 +1,7 @@
 锘縰sing System;
+using System.Collections.Generic;
 using HDL_ON.DAL.Server;
+using HDL_ON.DriverLayer;
 using HDL_ON.Entity;
 using HDL_ON.UI.CSS;
 using Newtonsoft.Json.Linq;
@@ -27,6 +29,18 @@
         /// 浣嶇疆淇℃伅璺宠浆缂栬緫鎸夐挳
         /// </summary>
         Button btnLocationInfoRight;
+        /// <summary>
+        /// 鍒犻櫎璁惧
+        /// </summary>
+        Button delTextBtn;
+        /// <summary>
+        /// 涓嬩竴绾у浘鏍�
+        /// </summary>
+        Button delRightBtn;
+        /// <summary>
+        /// 鍒犻櫎璁惧琛孎rameLayout
+        /// </summary>
+        FrameLayout delView;
 
         #endregion
 
@@ -36,6 +50,11 @@
         /// 鍚庨��鏃讹紝鍒锋柊涔嬪墠鐣岄潰鐨勬樉绀轰俊鎭�
         /// </summary>
         Action actionRefresh;
+
+        /// <summary>
+        /// 瑙g粦璁惧鍥炶皟
+        /// </summary>
+        public Action actionDel;
         #endregion
 
         public FunctionBaseInfoSetPage(Function func, Action action)
@@ -47,7 +66,14 @@
 
         public override void RemoveFromParent()
         {
-            actionRefresh?.Invoke();
+            new System.Threading.Thread(() =>
+            {
+                Application.RunOnMainThread(() =>
+                {
+                    actionRefresh?.Invoke();
+                });
+            })
+            { IsBackground = true }.Start();
             base.RemoveFromParent();
         }
 
@@ -57,7 +83,7 @@
         public void LoadPage(bool locationSetting = true)
         {
             bodyView.BackgroundColor = CSS_Color.BackgroundColor;
-            new TopViewDiv(bodyView, Language.StringByID(StringId.Setting)).LoadTopView(actionRefresh);
+            new TopViewDiv(bodyView, Language.StringByID(StringId.Setting)).LoadTopView();
 
             var contentView = new VerticalScrolViewLayout()
             {
@@ -171,13 +197,13 @@
                 #endregion
             }
             #region 鍏变韩
+
             //var sharedView = new FrameLayout()
             //{
             //    Height = Application.GetRealHeight(55),
             //    BackgroundColor = CSS_Color.MainBackgroundColor,
             //};
             //contentView.AddChidren(sharedView);
-
             //var btnSharedText = new Button()
             //{
             //    X = Application.GetRealWidth(16),
@@ -210,6 +236,129 @@
             //    });
             #endregion
 
+            #region 鍒犻櫎璁惧琛�  搴忓垪鍙� 鍨嬪彿
+
+            //鍒犻櫎璁惧琛�
+            delView = new FrameLayout() 
+            {
+                Height = Application.GetRealHeight(55),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            if (this.function.spk == SPK.VideoDoorLock)
+            {
+                contentView.AddChidren(delView);
+            }
+            var lineBtn = new Button()
+            {
+                Gravity = Gravity.CenterHorizontal,
+                BackgroundColor = CSS_Color.DividingLineColor,
+                Width = Application.GetRealWidth(343),
+                Height = Application.GetRealHeight(1)
+            };
+            delView.AddChidren(lineBtn);
+             delTextBtn = new Button() 
+            {
+                X = Application.GetRealWidth(16),
+                Width = Application.GetRealWidth(160),
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextID = StringId.DeleteDevice,
+            };
+            delView.AddChidren(delTextBtn);
+
+            delRightBtn= new Button()
+            {
+                X = Application.GetRealWidth(339),
+                Gravity = Gravity.CenterVertical,
+                Width = Application.GetMinRealAverage(16),
+                Height = Application.GetMinRealAverage(16),
+                UnSelectedImagePath = "Public/RightIcon.png",
+            };
+            delView.AddChidren(delRightBtn);
+
+            //搴忓垪鍙�
+            var serialView = new FrameLayout()
+            {
+                Height = Application.GetRealHeight(55),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            if (this.function.spk == SPK.VideoDoorLock)
+            {
+                contentView.AddChidren(serialView);
+            }
+            var serialLineBtn = new Button()
+            {
+                Gravity = Gravity.CenterHorizontal,
+                BackgroundColor = CSS_Color.DividingLineColor,
+                Width = Application.GetRealWidth(343),
+                Height = Application.GetRealHeight(1)
+            };
+            serialView.AddChidren(serialLineBtn);
+           var serialTextBtn = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                Width = Application.GetRealWidth(160),
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+               TextID = StringId.xuliehao,
+           };
+            serialView.AddChidren(serialTextBtn);
+            var serialValuesBtn = new Button()
+            {
+                X = Application.GetRealWidth(86),
+                Width = Application.GetRealWidth(237),
+                TextAlignment = TextAlignment.CenterRight,
+                TextColor = CSS_Color.PromptingColor1,
+                TextSize = CSS_FontSize.TextFontSize,
+                Text = this.function.sid,
+            };
+            serialView.AddChidren(serialValuesBtn);
+
+
+
+            //鍨嬪彿
+            var modelView = new FrameLayout()
+            {
+                Height = Application.GetRealHeight(55),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            if (this.function.spk == SPK.VideoDoorLock)
+            {
+                contentView.AddChidren(modelView);
+            }
+            var modelLineBtn = new Button()
+            {
+                Gravity = Gravity.CenterHorizontal,
+                BackgroundColor = CSS_Color.DividingLineColor,
+                Width = Application.GetRealWidth(343),
+                Height = Application.GetRealHeight(1)
+            };
+            modelView.AddChidren(modelLineBtn);
+            var modelTextBtn = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                Width = Application.GetRealWidth(160),
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+               TextID=StringId.xinghao,
+            };
+            modelView.AddChidren(modelTextBtn);
+            var modelValuesBtn = new Button()
+            {
+                X = Application.GetRealWidth(86),
+                Width = Application.GetRealWidth(237),
+                TextAlignment = TextAlignment.CenterRight,
+                TextColor = CSS_Color.PromptingColor1,
+                TextSize = CSS_FontSize.TextFontSize,
+                Text = this.function.omodel,
+            };
+            modelView.AddChidren(modelValuesBtn);
+
+
+            #endregion
 #if stage2
             #region 娣诲姞鍒版闈�
             var addToDesktopView = new FrameLayout()
@@ -367,6 +516,8 @@
 
             else if (function.spk == SPK.HvacCac)
             {
+
+
                 #region 闇茬偣娓╁害
                 if (function.GetAttribute(FunctionAttributeKey.dew_point_temp) != null)
                 {
@@ -385,7 +536,7 @@
                     var btnText = new Button()
                     {
                         X = Application.GetRealWidth(16),
-                        Width = Application.GetRealWidth(160),
+                        Width = Application.GetRealWidth(260),
                         TextAlignment = TextAlignment.CenterLeft,
                         TextColor = CSS_Color.FirstLevelTitleColor,
                         TextSize = CSS_FontSize.SubheadingFontSize,
@@ -406,14 +557,519 @@
                 #endregion
 
 
+                #region 琛ㄩ潰娓╁害
+                if (function.GetAttribute(FunctionAttributeKey.surface_temp) != null)
+                {
+                    contentView.AddChidren(new Button
+                    {
+                        Height = Application.GetRealHeight(10),
+                    });
+
+                    var surfaceTempRow = new FrameLayout()
+                    {
+                        Height = Application.GetRealHeight(55),
+                        BackgroundColor = CSS_Color.MainBackgroundColor,
+                    };
+                    contentView.AddChidren(surfaceTempRow);
+
+                    var btnSurfacaTempText = new Button()
+                    {
+                        X = Application.GetRealWidth(16),
+                        Width = Application.GetRealWidth(260),
+                        TextAlignment = TextAlignment.CenterLeft,
+                        TextColor = CSS_Color.FirstLevelTitleColor,
+                        TextSize = CSS_FontSize.SubheadingFontSize,
+                        TextID = StringId.SurfaceTemperature,
+                    };
+                    surfaceTempRow.AddChidren(btnSurfacaTempText);
+
+                    var btnSurfaceTempValue = new Button()
+                    {
+                        Width = Application.GetRealWidth(355),
+                        TextAlignment = TextAlignment.CenterRight,
+                        TextColor = CSS_Color.PromptingColor1,
+                        TextSize = CSS_FontSize.TextFontSize,
+                        Text = function.GetAttrState(FunctionAttributeKey.surface_temp) + "掳C",
+                    };
+                    surfaceTempRow.AddChidren(btnSurfaceTempValue);
+                }
+                #endregion
+
+
+                #region 娓╁害鏍″噯
+                if (function.GetAttribute(FunctionAttributeKey.room_temp_cc) != null)
+                {
+                    contentView.AddChidren(new Button
+                    {
+                        Height = Application.GetRealHeight(10),
+                    });
+
+                    var tempCCrow = new FrameLayout()
+                    {
+                        Height = Application.GetRealHeight(55),
+                        BackgroundColor = CSS_Color.MainBackgroundColor,
+                    };
+                    contentView.AddChidren(tempCCrow);
+
+                    var btnTempCcText = new Button()
+                    {
+                        X = Application.GetRealWidth(16),
+                        Width = Application.GetRealWidth(260),
+                        TextAlignment = TextAlignment.CenterLeft,
+                        TextColor = CSS_Color.FirstLevelTitleColor,
+                        TextSize = CSS_FontSize.SubheadingFontSize,
+                        TextID = StringId.TemperatureCalibration,
+                    };
+                    tempCCrow.AddChidren(btnTempCcText);
+
+                    var btnTempCcValue = new Button()
+                    {
+                        Width = Application.GetRealWidth(335),
+                        TextAlignment = TextAlignment.CenterRight,
+                        TextColor = CSS_Color.PromptingColor1,
+                        TextSize = CSS_FontSize.TextFontSize,
+                        Text = function.GetAttrState(FunctionAttributeKey.room_temp_cc) + "掳C",
+                    };
+                    tempCCrow.AddChidren(btnTempCcValue);
+
+                    var btnRightTempCc = new Button()
+                    {
+                        X = Application.GetRealWidth(339),
+                        Gravity = Gravity.CenterVertical,
+                        Width = Application.GetMinRealAverage(16),
+                        Height = Application.GetMinRealAverage(16),
+                        UnSelectedImagePath = "Public/RightIcon.png",
+                    };
+                    tempCCrow.AddChidren(btnRightTempCc);
+
+                    btnTempCcValue.MouseUpEventHandler = (sender, e) =>
+                    {
+                        LoadEditDialog(-10, 10, Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.room_humidity_cc)), (reslut) =>
+                        {
+                            btnTempCcValue.Text = reslut + "掳C";
+                            Dictionary<string, string> dic = new Dictionary<string, string>();
+                            dic.Add(FunctionAttributeKey.room_temp_cc, reslut);
+                            Control.Ins.SendWriteCommand(function, dic);
+                        });
+                    };
+                }
+                #endregion
+
+
+                #region 婀垮害鏍″噯
+                if (function.GetAttribute(FunctionAttributeKey.room_humidity_cc) != null)
+                {
+                    contentView.AddChidren(new Button
+                    {
+                        Height = Application.GetRealHeight(10),
+                    });
+
+                    var humidityCCrow = new FrameLayout()
+                    {
+                        Height = Application.GetRealHeight(55),
+                        BackgroundColor = CSS_Color.MainBackgroundColor,
+                    };
+                    contentView.AddChidren(humidityCCrow);
+
+                    var btnHumidityCcText = new Button()
+                    {
+                        X = Application.GetRealWidth(16),
+                        Width = Application.GetRealWidth(260),
+                        TextAlignment = TextAlignment.CenterLeft,
+                        TextColor = CSS_Color.FirstLevelTitleColor,
+                        TextSize = CSS_FontSize.SubheadingFontSize,
+                        TextID = StringId.HumidityCalibration,
+                    };
+                    humidityCCrow.AddChidren(btnHumidityCcText);
+
+                    var btnHumidityCcValue = new Button()
+                    {
+                        Width = Application.GetRealWidth(335),
+                        TextAlignment = TextAlignment.CenterRight,
+                        TextColor = CSS_Color.PromptingColor1,
+                        TextSize = CSS_FontSize.TextFontSize,
+                        Text = function.GetAttrState(FunctionAttributeKey.room_humidity_cc) + "%",
+                    };
+                    humidityCCrow.AddChidren(btnHumidityCcValue);
+
+
+                    var btnRightHumidityCc = new Button()
+                    {
+                        X = Application.GetRealWidth(339),
+                        Gravity = Gravity.CenterVertical,
+                        Width = Application.GetMinRealAverage(16),
+                        Height = Application.GetMinRealAverage(16),
+                        UnSelectedImagePath = "Public/RightIcon.png",
+                    };
+                    humidityCCrow.AddChidren(btnRightHumidityCc);
+
+                    btnHumidityCcValue.MouseUpEventHandler = (sender, e) =>
+                    {
+                        LoadEditDialog(-20, 20, Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.room_humidity_cc)), (reslut) =>
+                        {
+                            btnHumidityCcValue.Text = reslut + "%";
+                            Dictionary<string, string> dic = new Dictionary<string, string>();
+                            dic.Add(FunctionAttributeKey.room_humidity_cc, reslut);
+                            Control.Ins.SendWriteCommand(function, dic);
+                        });
+                    };
+
+                }
+                #endregion
+
+
+                #region 姣涚粏闃�闂�
+                if (function.GetAttribute(FunctionAttributeKey.cac_valve) != null)
+                {
+                    contentView.AddChidren(new Button
+                    {
+                        Height = Application.GetRealHeight(10),
+                    });
+
+                    var cacValveRow = new FrameLayout()
+                    {
+                        Height = Application.GetRealHeight(55),
+                        BackgroundColor = CSS_Color.MainBackgroundColor,
+                    };
+                    contentView.AddChidren(cacValveRow);
+
+                    var btnCacValveText = new Button()
+                    {
+                        X = Application.GetRealWidth(16),
+                        Width = Application.GetRealWidth(260),
+                        TextAlignment = TextAlignment.CenterLeft,
+                        TextColor = CSS_Color.FirstLevelTitleColor,
+                        TextSize = CSS_FontSize.SubheadingFontSize,
+                        TextID = StringId.CapillaryValve,
+                    };
+                    cacValveRow.AddChidren(btnCacValveText);
+
+                    var btnCacValvaValue = new Button()
+                    {
+                        Width = Application.GetRealWidth(355),
+                        TextAlignment = TextAlignment.CenterRight,
+                        TextColor = CSS_Color.PromptingColor1,
+                        TextSize = CSS_FontSize.TextFontSize,
+                        TextID = function.GetAttrState(FunctionAttributeKey.cac_valve) == "on"? StringId.On:StringId.OFF,
+                    };
+                    cacValveRow.AddChidren(btnCacValvaValue);
+                }
+                #endregion
+
+                #region 鍦版殩闃�闂�
+                if (function.GetAttribute(FunctionAttributeKey.fh_valve) != null)
+                {
+                    contentView.AddChidren(new Button
+                    {
+                        Height = Application.GetRealHeight(10),
+                    });
+
+                    var fhValveRow = new FrameLayout()
+                    {
+                        Height = Application.GetRealHeight(55),
+                        BackgroundColor = CSS_Color.MainBackgroundColor,
+                    };
+                    contentView.AddChidren(fhValveRow);
+
+                    var btnFhValveText = new Button()
+                    {
+                        X = Application.GetRealWidth(16),
+                        Width = Application.GetRealWidth(260),
+                        TextAlignment = TextAlignment.CenterLeft,
+                        TextColor = CSS_Color.FirstLevelTitleColor,
+                        TextSize = CSS_FontSize.SubheadingFontSize,
+                        TextID = StringId.FloorHeatingValve,
+                    };
+                    fhValveRow.AddChidren(btnFhValveText);
+
+                    var btnFhValvaValue = new Button()
+                    {
+                        Width = Application.GetRealWidth(355),
+                        TextAlignment = TextAlignment.CenterRight,
+                        TextColor = CSS_Color.PromptingColor1,
+                        TextSize = CSS_FontSize.TextFontSize,
+                        TextID = function.GetAttrState(FunctionAttributeKey.fh_valve) == "on"? StringId.On:StringId.OFF,
+                    };
+                    fhValveRow.AddChidren(btnFhValvaValue);
+                }
+                #endregion
+
 
 
             }
 
+            else if(function.spk == SPK.SenesorMegahealth || function.spk == SPK.SensorMmvPose)
+            {
+                contentView.AddChidren(new Button
+                {
+                    Height = Application.GetRealHeight(8),
+                });
+                #region 鎺ㄩ�佸紑鍏�
+                var viewRow0 = new FrameLayout()
+                {
+                    Height = Application.GetRealHeight(55),
+                    BackgroundColor = CSS_Color.MainBackgroundColor,
+                };
+                contentView.AddChidren(viewRow0);
+
+
+                var btnRowTitle0 = new Button()
+                {
+                    X = Application.GetRealWidth(16),
+                    Width = Application.GetRealWidth(160),
+                    TextAlignment = TextAlignment.CenterLeft,
+                    TextColor = CSS_Color.FirstLevelTitleColor,
+                    TextSize = CSS_FontSize.SubheadingFontSize,
+                    TextID = StringId.AlarmFunction,
+                };
+                viewRow0.AddChidren(btnRowTitle0);
+
+                var btnSwtichIcon0 = new Button()
+                {
+                    X = Application.GetRealWidth(322),
+                    Gravity = Gravity.CenterVertical,
+                    Width = Application.GetMinRealAverage(36),
+                    Height = Application.GetMinRealAverage(36),
+                    UnSelectedImagePath = "Public/Switch_2.png",
+                    SelectedImagePath = "Public/SwitchOn_2.png",
+                };
+                viewRow0.AddChidren(btnSwtichIcon0);
+
+                DeviceMessageRules deviceMessageRules = new DeviceMessageRules()
+                {
+                    deviceId = function.deviceId
+                };
+
+                btnSwtichIcon0.MouseUpEventHandler = (sender, e) => {
+                    var push = btnSwtichIcon0.IsSelected = !btnSwtichIcon0.IsSelected;
+                    new System.Threading.Thread(() => {
+                        var result = new HttpServerRequest().DeviceMessageRulesSet(function.deviceId, deviceMessageRules.conditionIdentify, push);//璁剧疆鎺ㄩ�佷俊鎭�
+                        Application.RunOnMainThread(() =>
+                        {
+                            if (result != null && result.Code == StateCode.SUCCESS)
+                            {
+                                    deviceMessageRules.push = push;
+                            }
+                            else
+                            {
+                                btnSwtichIcon0.IsSelected = deviceMessageRules.push;
+                            }
+                        });
+                    })
+                    { IsBackground = true }.Start();
+                };
+
+
+                Loading waitView = new Loading();
+                viewRow0.AddChidren(waitView);
+                new System.Threading.Thread(() => {
+                    Application.RunOnMainThread(() => {
+                        waitView.Start("");
+                    });
+                    var result = new HttpServerRequest().GetDeviceMessageRulesSet(function.deviceId);
+                    //var result1 = new HttpServerRequest().DeviceMessageRulesSet(function.deviceId);//璁剧疆鎺ㄩ�佷俊鎭�
+                    Application.RunOnMainThread(() =>
+                    {
+                        if (result != null && result.Code == StateCode.SUCCESS && result.Data != null)
+                        {
+                            var data = Newtonsoft.Json.JsonConvert.DeserializeObject<List<DeviceMessageRules>>(result.Data.ToString());
+                            if (data.Count > 0)
+                            {
+                                deviceMessageRules = data[0];
+                                btnSwtichIcon0.IsSelected = deviceMessageRules.push;
+                            }
+                        }
+                        else
+                        {
+                            btnSwtichIcon0.IsSelected = false;
+                        }
+                        waitView.Hide();
+                        waitView.RemoveFromParent();
+                    });
+                })
+                { IsBackground = true }.Start();
+
+                viewRow0.AddChidren(new Button()
+                {
+                    Gravity = Gravity.CenterHorizontal,
+                    Y = Application.GetRealHeight(54),
+                    BackgroundColor = CSS_Color.DividingLineColor,
+                    Width = Application.GetRealWidth(343),
+                    Height = Application.GetRealHeight(1)
+                });
+                #endregion
+
+                #region 婕旂ず妯″紡
+                var viewRow = new FrameLayout()
+                {
+                    Height = Application.GetRealHeight(55),
+                    BackgroundColor = CSS_Color.MainBackgroundColor,
+                };
+                contentView.AddChidren(viewRow);
+
+
+                var btnRowTitle = new Button()
+                {
+                    X = Application.GetRealWidth(16),
+                    Width = Application.GetRealWidth(160),
+                    TextAlignment = TextAlignment.CenterLeft,
+                    TextColor = CSS_Color.FirstLevelTitleColor,
+                    TextSize = CSS_FontSize.SubheadingFontSize,
+                    TextID = StringId.LaboratoryMode,
+                };
+                viewRow.AddChidren(btnRowTitle);
+
+                var btnSwtichIcon = new Button()
+                {
+                    X = Application.GetRealWidth(322),
+                    Gravity = Gravity.CenterVertical,
+                    Width = Application.GetMinRealAverage(36),
+                    Height = Application.GetMinRealAverage(36),
+                    UnSelectedImagePath = "Public/Switch_2.png",
+                    SelectedImagePath = "Public/SwitchOn_2.png",
+                    IsSelected = function.extSet.labModel
+                };
+                viewRow.AddChidren(btnSwtichIcon);
+
+                btnSwtichIcon.MouseUpEventHandler = (sender, e) =>
+                {
+                    btnSwtichIcon.IsSelected = function.extSet.labModel = !btnSwtichIcon.IsSelected;
+                    new System.Threading.Thread(() =>
+                    {
+                        var result = new HttpServerRequest().DeviceExtSet(function.deviceId, function.extSet);
+                        Application.RunOnMainThread(() =>
+                        {
+                            if (result != null && result.Code == StateCode.SUCCESS)
+                            {
+                                if (Convert.ToBoolean( result.Data ))
+                                {
+                                    function.extSet.labModel = btnSwtichIcon.IsSelected;
+                                }
+                                else
+                                {
+                                    btnSwtichIcon.IsSelected = function.extSet.labModel = !btnSwtichIcon.IsSelected;
+                                }
+                            }
+                            else
+                            {
+                                btnSwtichIcon.IsSelected = function.extSet.labModel = !btnSwtichIcon.IsSelected;
+                            }
+                        });
+                    })
+                    { IsBackground = true }.Start();
+                };
+
+                #endregion
+
+            }
 
             LoadEventList();
         }
 
 
+
+        /// <summary>
+        /// 鍔犺浇閫夋嫨寮圭獥
+        /// </summary>
+        void LoadEditDialog(int min ,int max,int curValue,Action<string> action)
+        {
+
+            List<string> pickerItems = new List<string>();
+
+            Dialog dialog = new Dialog();
+
+            var pView = new FrameLayout()
+            {
+                BackgroundColor = CSS_Color.DialogTransparentColor1,
+            };
+            dialog.AddChidren(pView);
+
+            var optionBaseView = new FrameLayout()
+            {
+                Y = Application.GetRealHeight(456 - 60),
+                Gravity = Gravity.CenterHorizontal,
+                Width = Application.GetRealWidth(343),
+                Height = Application.GetRealHeight(260),
+                AnimateSpeed = 0.3f,
+                Animate = Animate.DownToUp,
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+                Radius = (uint)Application.GetRealWidth(12),
+            };
+            pView.AddChidren(optionBaseView);
+
+            var topView = new FrameLayout()
+            {
+                Gravity = Gravity.CenterHorizontal,
+                Width = Application.GetRealWidth(343),
+                Height = Application.GetRealHeight(40),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+                Radius = (uint)Application.GetRealWidth(12),
+            };
+            optionBaseView.AddChidren(topView);
+            topView.AddChidren(new Button() { Y = Application.GetRealHeight(39), Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor });
+
+            var btnCancel = new Button()
+            {
+                X = Application.GetRealWidth(21),
+                Width = Application.GetRealWidth(100),
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.PromptingColor1,
+                TextSize = CSS_FontSize.TextFontSize,
+                TextID = StringId.Cancel,
+            };
+            topView.AddChidren(btnCancel);
+
+            var btnConfrim = new Button()
+            {
+                X = Application.GetRealWidth(160),
+                Width = Application.GetRealWidth(160),
+                TextAlignment = TextAlignment.CenterRight,
+                TextColor = CSS_Color.MainColor,
+                TextSize = CSS_FontSize.TextFontSize,
+                TextID = StringId.Confirm,
+            };
+            topView.AddChidren(btnConfrim);
+
+            UIPickerView uIPickerView = new UIPickerView()
+            {
+                Y = Application.GetRealHeight(40),
+                Height = Application.GetRealHeight(210),
+                Radius = (uint)Application.GetRealWidth(12),
+            };
+            for (int i = min; i <= max; i += 1)
+            {
+                pickerItems.Add(i.ToString());
+            }
+            uIPickerView.setNPicker(pickerItems, null, null);
+            optionBaseView.AddChidren(uIPickerView);
+            uIPickerView.setCurrentItems(pickerItems.IndexOf(curValue.ToString()), 4, 5);
+
+            string selectItem = pickerItems[0];
+            if (pickerItems.Contains(curValue.ToString()))
+            {
+                selectItem = curValue.ToString();
+            }
+
+            dialog.Show();
+
+            pView.MouseUpEventHandler = (sender, e) => {
+                dialog.Close();
+            };
+
+            btnCancel.MouseUpEventHandler = (sender, e) => {
+                dialog.Close();
+            };
+            uIPickerView.OnSelectChangeEvent = (int1, int2, int3) => {
+                selectItem = pickerItems[int1];
+            };
+            btnConfrim.MouseUpEventHandler = (sender, e) => {
+                dialog.Close();
+                action?.Invoke(selectItem);
+            };
+
+        }
+
+
+
     }
 }

--
Gitblit v1.8.0