From d06e2aa43a5c791058a75aa83ef17f936e2f5c0d Mon Sep 17 00:00:00 2001
From: duheng <2784771470@qq.com>
Date: 星期五, 27 九月 2024 09:20:53 +0800
Subject: [PATCH] Merge branch 'master' of http://47.103.154.90:83/r/HStation/XHS.V1.0

---
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/04-elbow/XhsProjectSimulationElbowUnMatchingListCtrl.cs         |   12 +
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/15-translation/HydroTranslationListCtrl.cs                                                          |   12 +
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/00-core/XhsProjectSimulationUnMatchingListCtrl.cs               |    3 
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/10-reservoir/HydroReservoirListCtrl.cs                                                              |   12 +
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/09-blunthead/HydroBluntheadListCtrl.cs                                                              |   12 +
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/07-flowmeter/HydroFlowmeterListCtrl.cs                                                              |   12 +
 WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/01-network/00-core/Network_Method.cs                                                                      |    4 
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/04-elbow/HydroElbowListCtrl.cs                                                                      |   12 +
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/11-tank/HydroTankListCtrl.cs                                                                        |   12 +
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/03-pipe/XhsProjectSimulationPipeUnMatchingListCtrl.cs           |   12 +
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/XhsProjectSimulationMgrPage.cs                                                              |  138 -----------
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/12-waterbox/HydroWaterboxListCtrl.cs                                                                |   12 +
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/13-pipe/HydroPipeListCtrl.cs                                                                        |   12 +
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/02-valve/XhsProjectSimulationValveUnMatchingListCtrl.cs         |   12 +
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/05-threelink/HydroThreelinkListCtrl.cs                                                              |   12 +
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/01-import/00-core/ImportXhsProjectHelper.cs                                                    |   19 +
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/16-pump/HydroPumpListCtrl.cs                                                                        |   12 +
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.cs                                               |   13 
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/06-fourlink/HydroFourlinkListCtrl.cs                                                                |   12 +
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/05-function/XhsProjectSimulationFunctionMgrCtrl.cs                                          |    8 
 WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/02-panel/NetworkPanel.cs                                                                                  |   66 +++--
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/14-exchanger/HydroExchangerListCtrl.cs                                                              |   12 +
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/06-meter/HydroMeterListCtrl.cs                                                                      |   12 +
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/06-fourlink/XhsProjectSimulationFourlinkUnMatchingListCtrl.cs   |   12 +
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/01-pump/XhsProjectSimulationPumpUnMatchingListCtrl.cs           |   12 +
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/08-pressmeter/HydroPressmeterListCtrl.cs                                                            |   12 +
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/17-valve/HydroValveListCtrl.cs                                                                      |   12 +
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/00-core/XhsProjectSimulationUnMatchingListCtrl.Designer.cs      |   32 +-
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/05-threelink/XhsProjectSimulationThreelinkUnMatchingListCtrl.cs |   12 +
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/03-hydrant/HydroHydrantListCtrl.cs                                                                  |   16 +
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs                                             |   22 +
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/02-nozzle/HydroNozzleListCtrl.cs                                                                    |   16 +
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/01-junction/HydroJunctionListCtrl.cs                                                                |   18 +
 33 files changed, 407 insertions(+), 200 deletions(-)

diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/01-import/00-core/ImportXhsProjectHelper.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/01-import/00-core/ImportXhsProjectHelper.cs
index 16a12b1..bfb05bd 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/01-import/00-core/ImportXhsProjectHelper.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/01-import/00-core/ImportXhsProjectHelper.cs
@@ -186,6 +186,25 @@
                 return true;
             }
 
+            feedBackMsg?.Invoke("姝e湪杩涜浜у搧鍖归厤...", Color.Black);
+            hydroInfo = await BLLFactory<Yw.BLL.HydroModelInfo>.Instance.GetByID(hydroId);
+            var matchingParas = AssetsMatchingParasHelper.Create(hydroInfo);
+            if (await AssetsMatchingHelper.Matching(matchingParas))
+            {
+                if (AssetsMatchingParasHelper.Apply(hydroInfo, matchingParas))
+                {
+                    feedBackMsg?.Invoke("浜у搧鍖归厤鎴愬姛銆傘�傘��", Color.Green);
+                }
+                else
+                {
+                    feedBackMsg?.Invoke("浜у搧鍖归厤澶辫触锛侊紒锛�", Color.Red);
+                }
+            }
+            else
+            {
+                feedBackMsg?.Invoke("浜у搧鍖归厤澶辫触锛侊紒锛�", Color.Red);
+            }
+
             feedBackMsg?.Invoke("姘村姏缁撴瀯鏂囦欢瑙f瀽鎴愬姛銆傘�傘��", Color.Green);
             feedBackProgress?.Invoke(100, 30);
             vm.HydroID = hydroId;
diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs
index 535af31..1bbbfa5 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs
@@ -18,17 +18,24 @@
             this.hydroParterPropertyCtrl1.PropertyValueChangingEvent += HydroParterPropertyCtrl1_PropertyValueChangingEvent;
         }
 
+        //姘村姏淇℃伅鏂规硶
+        private Func<Yw.Model.HydroModelInfo> _hydroInfoFunc = null;
+
         /// <summary>
-        /// 鑾峰彇姘村姏淇℃伅浜嬩欢
+        /// 缁戝畾鏁版嵁
         /// </summary>
-        public event Func<Yw.Model.HydroModelInfo> GetHydroInfoEvent;
+        public void SetBindingData(Func<Yw.Model.HydroModelInfo> hydroInfoFunc)
+        {
+            _hydroInfoFunc = hydroInfoFunc;
+        }
+
 
         /// <summary>
         /// 閫夋嫨缁勪欢
         /// </summary>
         public void SelectParter(long id)
         {
-            var hydroInfo = GetHydroInfoEvent?.Invoke();
+            var hydroInfo = _hydroInfoFunc?.Invoke();
             if (hydroInfo == null)
             {
                 this.hydroParterPropertyCtrl1.SelectedObject = null;
@@ -45,7 +52,7 @@
         /// </summary>
         public void SelectParter(string code)
         {
-            var hydroInfo = GetHydroInfoEvent?.Invoke();
+            var hydroInfo = _hydroInfoFunc?.Invoke();
             if (hydroInfo == null)
             {
                 this.hydroParterPropertyCtrl1.SelectedObject = null;
@@ -60,8 +67,6 @@
         /// <summary>
         /// 閫夋嫨缁勪欢
         /// </summary>
-        /// <param name="parter"></param>
-        /// <param name="allParterList"></param>
         public void SelectParter(Yw.Model.HydroParterInfo parter, List<Yw.Model.HydroParterInfo> allParterList)
         {
             var vm = Yw.WinFrmUI.HydroParterPropertyViewModelBuilder.CreateViewModel(parter, allParterList);
@@ -85,7 +90,7 @@
         //鑾峰彇姘村姏淇℃伅浜嬩欢
         private Yw.Model.HydroModelInfo HydroParterPropertyCtrl1_GetHydroInfoEvent()
         {
-            var hydroInfo = GetHydroInfoEvent?.Invoke();
+            var hydroInfo = _hydroInfoFunc?.Invoke();
             return hydroInfo;
         }
 
@@ -96,7 +101,7 @@
             {
                 case Yw.WinFrmUI.HydroCurve.Pump:
                     {
-                        var hydroInfo = GetHydroInfoEvent?.Invoke();
+                        var hydroInfo = _hydroInfoFunc?.Invoke();
                         if (hydroInfo == null)
                         {
                             return false;
@@ -174,5 +179,6 @@
         {
             return false;
         }
+
     }
 }
\ No newline at end of file
diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/05-function/XhsProjectSimulationFunctionMgrCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/05-function/XhsProjectSimulationFunctionMgrCtrl.cs
index 0e0e5ff..d09f3a0 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/05-function/XhsProjectSimulationFunctionMgrCtrl.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/05-function/XhsProjectSimulationFunctionMgrCtrl.cs
@@ -10,6 +10,14 @@
         }
 
         /// <summary>
+        /// 缁戝畾鏁版嵁
+        /// </summary>
+        public void SetBindingData()
+        {
+            this.ShowXhsProjectInfoEvent?.Invoke(this.svgImg32[0]);
+        }
+
+        /// <summary>
         /// 鏄剧ず寰幆姘撮」鐩俊鎭簨浠�
         /// </summary>
         public event Action<SvgImage> ShowXhsProjectInfoEvent;
diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/00-core/XhsProjectSimulationUnMatchingListCtrl.Designer.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/00-core/XhsProjectSimulationUnMatchingListCtrl.Designer.cs
index f4709a3..fc5a112 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/00-core/XhsProjectSimulationUnMatchingListCtrl.Designer.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/00-core/XhsProjectSimulationUnMatchingListCtrl.Designer.cs
@@ -29,7 +29,7 @@
         private void InitializeComponent()
         {
             tabPane1 = new DevExpress.XtraBars.Navigation.TabPane();
-            btnModelView = new SimpleButton();
+            btnViewModel = new SimpleButton();
             tabPageElbows = new DevExpress.XtraBars.Navigation.TabNavigationPage();
             xhsProjectSimulationElbowUnMatchingListCtrl1 = new XhsProjectSimulationElbowUnMatchingListCtrl();
             tabPageThreelinks = new DevExpress.XtraBars.Navigation.TabNavigationPage();
@@ -55,7 +55,7 @@
             // tabPane1
             // 
             tabPane1.AllowHtmlDraw = false;
-            tabPane1.Controls.Add(btnModelView);
+            tabPane1.Controls.Add(btnViewModel);
             tabPane1.Controls.Add(tabPageElbows);
             tabPane1.Controls.Add(tabPageThreelinks);
             tabPane1.Controls.Add(tabPageFourlinks);
@@ -72,17 +72,17 @@
             tabPane1.TabIndex = 0;
             tabPane1.Text = "tabPane1";
             // 
-            // btnModelView
+            // btnViewModel
             // 
-            btnModelView.Anchor = AnchorStyles.Top | AnchorStyles.Right;
-            btnModelView.Appearance.BackColor = DevExpress.LookAndFeel.DXSkinColors.FillColors.Primary;
-            btnModelView.Appearance.Options.UseBackColor = true;
-            btnModelView.Location = new Point(923, 1);
-            btnModelView.Name = "btnModelView";
-            btnModelView.Size = new Size(102, 20);
-            btnModelView.TabIndex = 18;
-            btnModelView.Text = "妯″瀷鏌ョ湅";
-            btnModelView.Click += btnModelView_Click;
+            btnViewModel.Anchor = AnchorStyles.Top | AnchorStyles.Right;
+            btnViewModel.Appearance.BackColor = DevExpress.LookAndFeel.DXSkinColors.FillColors.Primary;
+            btnViewModel.Appearance.Options.UseBackColor = true;
+            btnViewModel.Location = new Point(923, 1);
+            btnViewModel.Name = "btnViewModel";
+            btnViewModel.Size = new Size(102, 20);
+            btnViewModel.TabIndex = 18;
+            btnViewModel.Text = "鏄剧ず鎵�鏈�";
+            btnViewModel.Click += btnViewModel_Click;
             // 
             // tabPageElbows
             // 
@@ -97,6 +97,7 @@
             xhsProjectSimulationElbowUnMatchingListCtrl1.Dock = DockStyle.Fill;
             xhsProjectSimulationElbowUnMatchingListCtrl1.Location = new Point(0, 1);
             xhsProjectSimulationElbowUnMatchingListCtrl1.Name = "xhsProjectSimulationElbowUnMatchingListCtrl1";
+            xhsProjectSimulationElbowUnMatchingListCtrl1.ShowFindPanel = false;
             xhsProjectSimulationElbowUnMatchingListCtrl1.Size = new Size(1028, 595);
             xhsProjectSimulationElbowUnMatchingListCtrl1.TabIndex = 0;
             // 
@@ -113,6 +114,7 @@
             xhsProjectSimulationThreelinkUnMatchingListCtrl1.Dock = DockStyle.Fill;
             xhsProjectSimulationThreelinkUnMatchingListCtrl1.Location = new Point(0, 1);
             xhsProjectSimulationThreelinkUnMatchingListCtrl1.Name = "xhsProjectSimulationThreelinkUnMatchingListCtrl1";
+            xhsProjectSimulationThreelinkUnMatchingListCtrl1.ShowFindPanel = false;
             xhsProjectSimulationThreelinkUnMatchingListCtrl1.Size = new Size(1028, 595);
             xhsProjectSimulationThreelinkUnMatchingListCtrl1.TabIndex = 0;
             // 
@@ -129,6 +131,7 @@
             xhsProjectSimulationFourlinkUnMatchingListCtrl1.Dock = DockStyle.Fill;
             xhsProjectSimulationFourlinkUnMatchingListCtrl1.Location = new Point(0, 1);
             xhsProjectSimulationFourlinkUnMatchingListCtrl1.Name = "xhsProjectSimulationFourlinkUnMatchingListCtrl1";
+            xhsProjectSimulationFourlinkUnMatchingListCtrl1.ShowFindPanel = false;
             xhsProjectSimulationFourlinkUnMatchingListCtrl1.Size = new Size(1028, 595);
             xhsProjectSimulationFourlinkUnMatchingListCtrl1.TabIndex = 0;
             // 
@@ -145,6 +148,7 @@
             xhsProjectSimulationPipeUnMatchingListCtrl1.Dock = DockStyle.Fill;
             xhsProjectSimulationPipeUnMatchingListCtrl1.Location = new Point(0, 1);
             xhsProjectSimulationPipeUnMatchingListCtrl1.Name = "xhsProjectSimulationPipeUnMatchingListCtrl1";
+            xhsProjectSimulationPipeUnMatchingListCtrl1.ShowFindPanel = false;
             xhsProjectSimulationPipeUnMatchingListCtrl1.Size = new Size(1028, 595);
             xhsProjectSimulationPipeUnMatchingListCtrl1.TabIndex = 0;
             // 
@@ -161,6 +165,7 @@
             xhsProjectSimulationPumpUnMatchingListCtrl1.Dock = DockStyle.Fill;
             xhsProjectSimulationPumpUnMatchingListCtrl1.Location = new Point(0, 1);
             xhsProjectSimulationPumpUnMatchingListCtrl1.Name = "xhsProjectSimulationPumpUnMatchingListCtrl1";
+            xhsProjectSimulationPumpUnMatchingListCtrl1.ShowFindPanel = false;
             xhsProjectSimulationPumpUnMatchingListCtrl1.Size = new Size(1028, 595);
             xhsProjectSimulationPumpUnMatchingListCtrl1.TabIndex = 0;
             // 
@@ -177,6 +182,7 @@
             xhsProjectSimulationValveUnMatchingListCtrl1.Dock = DockStyle.Fill;
             xhsProjectSimulationValveUnMatchingListCtrl1.Location = new Point(0, 1);
             xhsProjectSimulationValveUnMatchingListCtrl1.Name = "xhsProjectSimulationValveUnMatchingListCtrl1";
+            xhsProjectSimulationValveUnMatchingListCtrl1.ShowFindPanel = false;
             xhsProjectSimulationValveUnMatchingListCtrl1.Size = new Size(1028, 595);
             xhsProjectSimulationValveUnMatchingListCtrl1.TabIndex = 0;
             // 
@@ -213,6 +219,6 @@
         private XhsProjectSimulationPipeUnMatchingListCtrl xhsProjectSimulationPipeUnMatchingListCtrl1;
         private XhsProjectSimulationPumpUnMatchingListCtrl xhsProjectSimulationPumpUnMatchingListCtrl1;
         private XhsProjectSimulationValveUnMatchingListCtrl xhsProjectSimulationValveUnMatchingListCtrl1;
-        private SimpleButton btnModelView;
+        private SimpleButton btnViewModel;
     }
 }
diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/00-core/XhsProjectSimulationUnMatchingListCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/00-core/XhsProjectSimulationUnMatchingListCtrl.cs
index fb21c4c..8bcc2ab 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/00-core/XhsProjectSimulationUnMatchingListCtrl.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/00-core/XhsProjectSimulationUnMatchingListCtrl.cs
@@ -118,7 +118,7 @@
         }
 
         //妯″瀷鏌ョ湅
-        private void btnModelView_Click(object sender, EventArgs e)
+        private void btnViewModel_Click(object sender, EventArgs e)
         {
             if (_hydroInfo == null)
             {
@@ -163,5 +163,6 @@
 
         #endregion
 
+
     }
 }
diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/01-pump/XhsProjectSimulationPumpUnMatchingListCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/01-pump/XhsProjectSimulationPumpUnMatchingListCtrl.cs
index 323cc0f..d032d4e 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/01-pump/XhsProjectSimulationPumpUnMatchingListCtrl.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/01-pump/XhsProjectSimulationPumpUnMatchingListCtrl.cs
@@ -21,6 +21,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroPumpInfo> HydroClickEvent;
diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/02-valve/XhsProjectSimulationValveUnMatchingListCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/02-valve/XhsProjectSimulationValveUnMatchingListCtrl.cs
index 331b4a3..77bb6c9 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/02-valve/XhsProjectSimulationValveUnMatchingListCtrl.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/02-valve/XhsProjectSimulationValveUnMatchingListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroValveInfo> HydroClickEvent;
diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/03-pipe/XhsProjectSimulationPipeUnMatchingListCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/03-pipe/XhsProjectSimulationPipeUnMatchingListCtrl.cs
index 3cef9ca..40716c3 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/03-pipe/XhsProjectSimulationPipeUnMatchingListCtrl.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/03-pipe/XhsProjectSimulationPipeUnMatchingListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroPipeInfo> HydroClickEvent;
diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/04-elbow/XhsProjectSimulationElbowUnMatchingListCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/04-elbow/XhsProjectSimulationElbowUnMatchingListCtrl.cs
index 02733cb..456015a 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/04-elbow/XhsProjectSimulationElbowUnMatchingListCtrl.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/04-elbow/XhsProjectSimulationElbowUnMatchingListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroElbowInfo> HydroClickEvent;
diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/05-threelink/XhsProjectSimulationThreelinkUnMatchingListCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/05-threelink/XhsProjectSimulationThreelinkUnMatchingListCtrl.cs
index 88c9e4d..a758ead 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/05-threelink/XhsProjectSimulationThreelinkUnMatchingListCtrl.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/05-threelink/XhsProjectSimulationThreelinkUnMatchingListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroThreelinkInfo> HydroClickEvent;
diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/06-fourlink/XhsProjectSimulationFourlinkUnMatchingListCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/06-fourlink/XhsProjectSimulationFourlinkUnMatchingListCtrl.cs
index 6b92bb9..e736a58 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/06-fourlink/XhsProjectSimulationFourlinkUnMatchingListCtrl.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/04-unmatching/06-fourlink/XhsProjectSimulationFourlinkUnMatchingListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroFourlinkInfo> HydroClickEvent;
diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.cs
index 8f2e39b..008f4ab 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.cs
@@ -74,12 +74,7 @@
             await this.xhsProjectSimulationBimfaceCtrl1.SetBindingData(_project, _projectSite, () => _hydroInfo);
             this.xhsProjectSimulationQ3dCtrl1.SetBindingData(_hydroInfo);
             this.xhsProjectSimulationL3dCtrl1.SetBindingData(_hydroInfo);
-        }
-
-        //灞炴�ч潰鏉胯幏鍙栨按鍔涗俊鎭簨浠�
-        private Yw.Model.HydroModelInfo xhsProjectSimulationPropertyCtrl1_GetHydroInfoEvent()
-        {
-            return _hydroInfo;
+            this.xhsProjectSimulationPropertyCtrl1.SetBindingData(() => _hydroInfo);
         }
 
         //姘村姏璁$畻
@@ -204,6 +199,12 @@
 
         #endregion Bimface
 
+        #region 灞炴�ч潰鏉�
+
+
+
+        #endregion
+
         #region 鑷姩鍖归厤
 
         //鑷姩鍖归厤
diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/XhsProjectSimulationMgrPage.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/XhsProjectSimulationMgrPage.cs
index c27376c..e0a03d2 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/XhsProjectSimulationMgrPage.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/XhsProjectSimulationMgrPage.cs
@@ -27,6 +27,15 @@
         private Yw.Model.HydroModelInfo _hydroInfo = null;//姘村姏淇℃伅
 
         /// <summary>
+        /// 缁戝畾鏁版嵁
+        /// </summary>
+        public async Task SetBindingData(long projectId)
+        {
+            _project = await BLLFactory<HStation.BLL.XhsProject>.Instance.GetByID(projectId);
+            await SetBindingData(_project);
+        }
+
+        /// <summary>
         /// 璁剧疆鏁版嵁
         /// </summary>
         public async Task SetBindingData(XhsProjectVmo project)
@@ -39,32 +48,6 @@
             _projectId = project.ID;
             this.PageTitle.Caption = $"{_project.Name}\r\n姘村姏妯℃嫙";
             await this.xhsProjectSimulationSchemeMgrCtrl1.SetBindingData(_project);
-        }
-
-        /// <summary>
-        /// 缁戝畾鏁版嵁
-        /// </summary>
-        public async Task SetBindingData(long projectId)
-        {
-            _project = await BLLFactory<HStation.BLL.XhsProject>.Instance.GetByID(projectId);
-            await SetBindingData(_project);
-            //this.xhsSchemeMgrListCtrl1.SetMatching(projectId);
-            //_project = await new BLL.XhsProjectStd().GetByID(projectId);
-            //this.PageTitle.Caption = 
-            //var projectSite = await new BLL.XhsProjectSiteStd().GetDefaultByProjectID(_project.ID);
-            //if (projectSite == null)
-            //{
-            //    return;
-            //}
-
-            //var relation = await new Yw.BLL.HydroModelRelation()
-            //    .GetDefaultByObjectTypeAndObjectIDOfPurpose(HStation.Xhs.DataType.XhsProjectSite, projectSite.ID, Yw.Bimface.Purpose.Simulation);
-            //if (relation == null)
-            //{
-            //    return;
-            //}
-
-            //_hydroInfo = await new Yw.BLL.HydroModelInfo().GetByID(relation.ModelID);
         }
 
         /// <summary>
@@ -84,6 +67,7 @@
                 var hydroRelation = await BLLFactory<Yw.BLL.HydroModelRelation>.Instance
                    .GetDefaultByObjectTypeAndObjectIDOfPurpose(HStation.Xhs.DataType.XhsProjectSite, _projectSite.ID, HStation.Xhs.Purpose.Simulation);
                 _hydroInfo = await BLLFactory<Yw.BLL.HydroModelInfo>.Instance.GetByID(hydroRelation.ModelID);
+                this.xhsProjectSimulationFunctionMgrCtrl1.SetBindingData();
             }
         }
 
@@ -142,108 +126,6 @@
         private void XhsProjectSimulationFunctionMgrCtrl1_CompareXhsProjectSchemeEvent(DevExpress.Utils.Svg.SvgImage obj)
         {
 
-        }
-
-
-
-
-
-
-
-        //鍔熻兘鐐瑰嚮
-        private async void accordionControl1_ElementClick(object sender, DevExpress.XtraBars.Navigation.ElementClickEventArgs e)
-        {
-            var tag = e.Element.Tag;
-            if (tag is not string code)
-                return;
-
-            var svg_image_size = new Size(24, 24);
-            switch (code)
-            {
-                case "basic_info":
-                    {
-                        var guid = new PageGuid()
-                        {
-                            Modular = this.PageGuid.Modular,
-                            MoudingType = eMoudingType.Tab,
-                            Function = "basic_info",
-                        };
-                        if (!IsExistPage(guid, true))
-                        {
-                            var page = new XhsSchemeBasicInfoPage();
-                            page.SetBindingData(_project.ID);
-                            page.PageTitle.Caption = e.Element.Text;
-                            page.PageTitle.HeaderSvgImage = e.Element.ImageOptions.SvgImage;
-                            page.PageTitle.SvgImageSize = svg_image_size;
-                            CreatePage(page, guid);
-                        }
-                    }
-                    break;
-                case "asset_mgr":
-                    {
-                        var guid = new PageGuid()
-                        {
-                            Modular = this.PageGuid.Modular,
-                            MoudingType = eMoudingType.Tab,
-                            Function = "asset_mgr",
-                        };
-                        if (!IsExistPage(guid, true))
-                        {
-                            var page = new XhsSchemeAssetMgrPage();
-                            await page.SetBindingData(_project.ID);
-                            page.PageTitle.Caption = e.Element.Text;
-                            page.PageTitle.HeaderSvgImage = e.Element.ImageOptions.SvgImage;
-                            page.PageTitle.SvgImageSize = svg_image_size;
-                            CreatePage(page, guid);
-                        }
-                    }
-                    break;
-                case "hydraulic_simulation":
-                    {
-                        var guid = new PageGuid()
-                        {
-                            Modular = this.PageGuid.Modular,
-                            MoudingType = eMoudingType.Tab,
-                            Function = "hydraulic_simulation",
-                        };
-                        if (!IsExistPage(guid, true))
-                        {
-                            var page = new XhsSchemeHydraulicSimulationPage();
-                            await page.SetBindingData(_project.ID);
-                            page.PageTitle.Caption = e.Element.Text;
-                            page.PageTitle.HeaderSvgImage = e.Element.ImageOptions.SvgImage;
-                            page.PageTitle.SvgImageSize = svg_image_size;
-                            CreatePage(page, guid);
-                        }
-                    }
-                    break;
-                case "create_scheme":
-                    {
-                        var dlg = new CreateSchemeDlg();
-                        dlg.ShowDialog();
-                    }
-                    break;
-                case "scheme_comparison":
-                    {
-                        var guid = new PageGuid()
-                        {
-                            Modular = this.PageGuid.Modular,
-                            MoudingType = eMoudingType.Tab,
-                            Function = "scheme_comparison",
-                        };
-                        if (!IsExistPage(guid, true))
-                        {
-                            var page = new XhsSchemeComparisonPage();
-                            page.PageTitle.Caption = e.Element.Text;
-                            page.PageTitle.HeaderSvgImage = e.Element.ImageOptions.SvgImage;
-                            page.PageTitle.SvgImageSize = svg_image_size;
-                            CreatePage(page, guid);
-                        }
-                    }
-                    break;
-                default:
-                    break;
-            }
         }
 
         #region TabbedView 鐩稿叧浜嬩欢澶勭悊绋嬪簭
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/01-junction/HydroJunctionListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/01-junction/HydroJunctionListCtrl.cs
index 9b13a0e..4d35c7b 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/01-junction/HydroJunctionListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/01-junction/HydroJunctionListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroJunctionInfo> HydroClickEvent;
@@ -19,7 +31,6 @@
         /// <summary>
         /// 缁戝畾鏁版嵁
         /// </summary>
-        /// <param name="allJunctionList"></param>
         public void SetBindingData(List<Yw.Model.HydroJunctionInfo> allJunctionList)
         {
             _allBindingList = new List<HydroJunctionViewModel>();
@@ -46,11 +57,6 @@
             this.HydroClickEvent?.Invoke(row.Vmo);
         }
 
-        public bool ShowFindPanel
-        {
-            get { return this.gridView1.OptionsFind.AlwaysVisible; }
-            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
-        }
 
     }
 }
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/02-nozzle/HydroNozzleListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/02-nozzle/HydroNozzleListCtrl.cs
index f1d56d1..7704a86 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/02-nozzle/HydroNozzleListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/02-nozzle/HydroNozzleListCtrl.cs
@@ -10,16 +10,28 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroNozzleInfo> HydroClickEvent;
 
-        private List<HydroNozzleViewModel> _allBindingList = null;//鎵�鏈夌粦瀹氬垪琛�
+        //鎵�鏈夌粦瀹氬垪琛�
+        private List<HydroNozzleViewModel> _allBindingList = null;
 
         /// <summary>
         /// 缁戝畾鏁版嵁
         /// </summary>
-        /// <param name="allNozzleList"></param>
         public void SetBindingData(List<Yw.Model.HydroNozzleInfo> allNozzleList)
         {
             _allBindingList = new List<HydroNozzleViewModel>();
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/03-hydrant/HydroHydrantListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/03-hydrant/HydroHydrantListCtrl.cs
index cc4e70f..b6d3a8e 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/03-hydrant/HydroHydrantListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/03-hydrant/HydroHydrantListCtrl.cs
@@ -10,16 +10,28 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroHydrantInfo> HydroClickEvent;
 
-        private List<HydroHydrantViewModel> _allBindingList = null;//鎵�鏈夌粦瀹氬垪琛�
+        //鎵�鏈夌粦瀹氬垪琛�
+        private List<HydroHydrantViewModel> _allBindingList = null;
 
         /// <summary>
         /// 缁戝畾鏁版嵁
         /// </summary>
-        /// <param name="allHydrantList"></param>
         public void SetBindingData(List<Yw.Model.HydroHydrantInfo> allHydrantList)
         {
             _allBindingList = new List<HydroHydrantViewModel>();
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/04-elbow/HydroElbowListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/04-elbow/HydroElbowListCtrl.cs
index 3a4bef1..6a58b1f 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/04-elbow/HydroElbowListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/04-elbow/HydroElbowListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroElbowInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/05-threelink/HydroThreelinkListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/05-threelink/HydroThreelinkListCtrl.cs
index 1626970..399c808 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/05-threelink/HydroThreelinkListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/05-threelink/HydroThreelinkListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroThreelinkInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/06-fourlink/HydroFourlinkListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/06-fourlink/HydroFourlinkListCtrl.cs
index 5a9fbb8..87ebf61 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/06-fourlink/HydroFourlinkListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/06-fourlink/HydroFourlinkListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroFourlinkInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/06-meter/HydroMeterListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/06-meter/HydroMeterListCtrl.cs
index d69db81..7389ef9 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/06-meter/HydroMeterListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/06-meter/HydroMeterListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroMeterInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/07-flowmeter/HydroFlowmeterListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/07-flowmeter/HydroFlowmeterListCtrl.cs
index 0ff622e..59e66af 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/07-flowmeter/HydroFlowmeterListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/07-flowmeter/HydroFlowmeterListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroFlowmeterInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/08-pressmeter/HydroPressmeterListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/08-pressmeter/HydroPressmeterListCtrl.cs
index 422b843..3046213 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/08-pressmeter/HydroPressmeterListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/08-pressmeter/HydroPressmeterListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroPressmeterInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/09-blunthead/HydroBluntheadListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/09-blunthead/HydroBluntheadListCtrl.cs
index 86a4906..4b32f5f 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/09-blunthead/HydroBluntheadListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/09-blunthead/HydroBluntheadListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroBluntheadInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/10-reservoir/HydroReservoirListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/10-reservoir/HydroReservoirListCtrl.cs
index 4b23258..0493a8f 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/10-reservoir/HydroReservoirListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/10-reservoir/HydroReservoirListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroReservoirInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/11-tank/HydroTankListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/11-tank/HydroTankListCtrl.cs
index 4872d35..22fe770 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/11-tank/HydroTankListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/11-tank/HydroTankListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroTankInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/12-waterbox/HydroWaterboxListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/12-waterbox/HydroWaterboxListCtrl.cs
index 5e149b7..cbbaf32 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/12-waterbox/HydroWaterboxListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/12-waterbox/HydroWaterboxListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroWaterboxInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/13-pipe/HydroPipeListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/13-pipe/HydroPipeListCtrl.cs
index f34df1b..7880f98 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/13-pipe/HydroPipeListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/13-pipe/HydroPipeListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroPipeInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/14-exchanger/HydroExchangerListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/14-exchanger/HydroExchangerListCtrl.cs
index 60ea851..95b8bc0 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/14-exchanger/HydroExchangerListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/14-exchanger/HydroExchangerListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroExchangerInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/15-translation/HydroTranslationListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/15-translation/HydroTranslationListCtrl.cs
index 6b5d1f5..dd761bb 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/15-translation/HydroTranslationListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/15-translation/HydroTranslationListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroTranslationInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/16-pump/HydroPumpListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/16-pump/HydroPumpListCtrl.cs
index e8be559..f6495e4 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/16-pump/HydroPumpListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/16-pump/HydroPumpListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroPumpInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/17-valve/HydroValveListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/17-valve/HydroValveListCtrl.cs
index b8afe45..d79e4de 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/17-valve/HydroValveListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-parter/17-valve/HydroValveListCtrl.cs
@@ -10,6 +10,18 @@
         }
 
         /// <summary>
+        /// 鏄剧ず鏌ヨ闈㈡澘
+        /// </summary>
+        [Browsable(true)]
+        [Description("鏄剧ず鏌ヨ闈㈡澘")]
+        [DefaultValue(true)]
+        public bool ShowFindPanel
+        {
+            get { return this.gridView1.OptionsFind.AlwaysVisible; }
+            set { this.gridView1.OptionsFind.AlwaysVisible = value; }
+        }
+
+        /// <summary>
         /// 姘村姏鐐瑰嚮浜嬩欢
         /// </summary>
         public event Action<Yw.Model.HydroValveInfo> HydroClickEvent;
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/01-network/00-core/Network_Method.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/01-network/00-core/Network_Method.cs
index 647caa5..22bc10a 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/01-network/00-core/Network_Method.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/01-network/00-core/Network_Method.cs
@@ -75,7 +75,7 @@
             {
                 X = -center.X,
                 Y = -center.Y,
-                Z = -boundingBox.Max.Z * 3f
+                Z = -center.Z
             };
         }
 
@@ -111,7 +111,7 @@
             }
             return new LookAt3d()
             {
-                Eye = new Point3d(0, 0, 0),
+                Eye = new Point3d(0, 0, 3 * boundingBox.Max.Z),
                 Center = new Point3d(0, 0, 0),
                 Up = new Point3d(0, 1, 0)
             };
diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/02-panel/NetworkPanel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/02-panel/NetworkPanel.cs
index 54af332..e4317df 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/02-panel/NetworkPanel.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/02-panel/NetworkPanel.cs
@@ -1,4 +1,6 @@
-锘縩amespace Yw.WinFrmUI.HydroL3d
+锘縰sing Yw.Untity;
+
+namespace Yw.WinFrmUI.HydroL3d
 {
     public partial class NetworkPanel : DevExpress.XtraEditors.XtraUserControl
     {
@@ -116,40 +118,40 @@
 
             _network.Draw(gl);
 
-            float[] minCorner = { _paras.BoundingBox.Min.X, _paras.BoundingBox.Min.Y, _paras.BoundingBox.Min.Z };
-            float[] maxCorner = { _paras.BoundingBox.Max.X, _paras.BoundingBox.Max.Y, _paras.BoundingBox.Max.Z };
+            //float[] minCorner = { _paras.BoundingBox.Min.X, _paras.BoundingBox.Min.Y, _paras.BoundingBox.Min.Z };
+            //float[] maxCorner = { _paras.BoundingBox.Max.X, _paras.BoundingBox.Max.Y, _paras.BoundingBox.Max.Z };
 
-            gl.Begin(OpenGL.GL_POINT);
-            gl.Vertex(minCorner[0], minCorner[1], minCorner[2]);
-            gl.End();
+            //gl.Begin(OpenGL.GL_POINT);
+            //gl.Vertex(minCorner[0], minCorner[1], minCorner[2]);
+            //gl.End();
 
-            gl.Begin(OpenGL.GL_POINT);
-            gl.Vertex(maxCorner[0], maxCorner[1], maxCorner[2]);
-            gl.End();
+            //gl.Begin(OpenGL.GL_POINT);
+            //gl.Vertex(maxCorner[0], maxCorner[1], maxCorner[2]);
+            //gl.End();
 
-            gl.Begin(OpenGL.GL_LINE_LOOP);
-            // 缁樺埗搴曢潰
-            gl.Vertex(minCorner[0], minCorner[1], minCorner[2]);
-            gl.Vertex(maxCorner[0], minCorner[1], minCorner[2]);
-            gl.Vertex(maxCorner[0], maxCorner[1], minCorner[2]);
-            gl.Vertex(minCorner[0], maxCorner[1], minCorner[2]);
+            //gl.Begin(OpenGL.GL_LINE_LOOP);
+            //// 缁樺埗搴曢潰
+            //gl.Vertex(minCorner[0], minCorner[1], minCorner[2]);
+            //gl.Vertex(maxCorner[0], minCorner[1], minCorner[2]);
+            //gl.Vertex(maxCorner[0], maxCorner[1], minCorner[2]);
+            //gl.Vertex(minCorner[0], maxCorner[1], minCorner[2]);
 
-            // 缁樺埗椤堕潰
-            gl.Vertex(minCorner[0], minCorner[1], maxCorner[2]);
-            gl.Vertex(maxCorner[0], minCorner[1], maxCorner[2]);
-            gl.Vertex(maxCorner[0], maxCorner[1], maxCorner[2]);
-            gl.Vertex(minCorner[0], maxCorner[1], maxCorner[2]);
+            //// 缁樺埗椤堕潰
+            //gl.Vertex(minCorner[0], minCorner[1], maxCorner[2]);
+            //gl.Vertex(maxCorner[0], minCorner[1], maxCorner[2]);
+            //gl.Vertex(maxCorner[0], maxCorner[1], maxCorner[2]);
+            //gl.Vertex(minCorner[0], maxCorner[1], maxCorner[2]);
 
-            // 杩炴帴搴曢潰鍜岄《闈㈢殑杈�
-            gl.Vertex(minCorner[0], minCorner[1], minCorner[2]);
-            gl.Vertex(minCorner[0], minCorner[1], maxCorner[2]);
-            gl.Vertex(maxCorner[0], minCorner[1], minCorner[2]);
-            gl.Vertex(maxCorner[0], minCorner[1], maxCorner[2]);
-            gl.Vertex(maxCorner[0], maxCorner[1], minCorner[2]);
-            gl.Vertex(maxCorner[0], maxCorner[1], maxCorner[2]);
-            gl.Vertex(minCorner[0], maxCorner[1], minCorner[2]);
-            gl.Vertex(minCorner[0], maxCorner[1], maxCorner[2]);
-            gl.End();
+            //// 杩炴帴搴曢潰鍜岄《闈㈢殑杈�
+            //gl.Vertex(minCorner[0], minCorner[1], minCorner[2]);
+            //gl.Vertex(minCorner[0], minCorner[1], maxCorner[2]);
+            //gl.Vertex(maxCorner[0], minCorner[1], minCorner[2]);
+            //gl.Vertex(maxCorner[0], minCorner[1], maxCorner[2]);
+            //gl.Vertex(maxCorner[0], maxCorner[1], minCorner[2]);
+            //gl.Vertex(maxCorner[0], maxCorner[1], maxCorner[2]);
+            //gl.Vertex(minCorner[0], maxCorner[1], minCorner[2]);
+            //gl.Vertex(minCorner[0], maxCorner[1], maxCorner[2]);
+            //gl.End();
 
             gl.Flush();   //寮哄埗鍒锋柊
 
@@ -320,8 +322,8 @@
 
         private void openGLControl1_MouseMove(object sender, MouseEventArgs e)
         {
-            //var list = this.openGLControl1.OpenGL.UnProject(e.X, e.Y, 0);
-            //this.labelControl1.Text = DoubleListHelper.ToString(list);
+            var list = this.openGLControl1.OpenGL.UnProject(e.X, e.Y, 0);
+            this.labelControl1.Text = DoubleListHelper.ToString(list);
             var hasMouseLeftDownRotate = MouseLeftDownRotate(e);
             var hasMouseRightDownMove = MouseRightDownMove(e);
             if (hasMouseLeftDownRotate || hasMouseRightDownMove)

--
Gitblit v1.9.3