From d6111ca1fa9f70afc50c8213f81c9d78c14a6527 Mon Sep 17 00:00:00 2001
From: duheng <2784771470@qq.com>
Date: 星期三, 22 一月 2025 14:37:21 +0800
Subject: [PATCH] 阀门单独匹配修改

---
 WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/relation/03-grid/PhartDiagramRelationGridViewCtrl.cs |   49 +++++++++++++++++++++++++++++++++++--------------
 1 files changed, 35 insertions(+), 14 deletions(-)

diff --git a/WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/relation/03-grid/PhartDiagramRelationGridViewCtrl.cs b/WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/relation/03-grid/PhartDiagramRelationGridViewCtrl.cs
index 4fb0459..9e9e980 100644
--- a/WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/relation/03-grid/PhartDiagramRelationGridViewCtrl.cs
+++ b/WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/relation/03-grid/PhartDiagramRelationGridViewCtrl.cs
@@ -1,14 +1,5 @@
-锘縰sing DevExpress.XtraEditors;
-using HStation.Vmo;
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
+锘縰sing HStation.Vmo;
 using System.Data;
-using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows.Forms;
 using Yw;
 
 namespace HStation.WinFrmUI
@@ -19,29 +10,45 @@
         {
             InitializeComponent();
             this.gridView1.SetNormalView();
-            //this.gridView1.RegistCustomDrawCell();
+            this.gridView1.RegistCustomDrawCell();
         }
 
         private List<PhartDiagramRelationGridItemViewModel> _allBindingList = null;//鎵�鏈夌粦瀹氬垪琛�
 
+        private string _objectType;
+
+        public Action<PhartDiagramRelationExtensionsVmo> SelectDataEvent;
+
         /// <summary>
         /// 缁戝畾鏁版嵁
         /// </summary>
-        public async void SetBindingData(string objectType, long objectId)
+        public async void SetBindingData(string objectType, long objectId, long? curveId)
         {
+            _objectType = objectType;
             var allList = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance.GetByObjectTypeAndObjectID(objectType, objectId);
-            SetBindingData(allList);
+            SetBindingData(allList, curveId);
+            gridView1_FocusedRowChanged(null, null);
         }
 
         /// <summary>
         /// 缁戝畾鏁版嵁
         /// </summary>
-        public void SetBindingData(List<PhartDiagramRelationVmo> allList)
+        public void SetBindingData(List<PhartDiagramRelationVmo> allList, long? curveId)
         {
             _allBindingList = new List<PhartDiagramRelationGridItemViewModel>();
             allList?.OrderBy(x => x.SortCode).ToList().ForEach(x => _allBindingList.Add(new PhartDiagramRelationGridItemViewModel(x)));
             this.phartDiagramRelationGridItemViewModelBindingSource.DataSource = _allBindingList;
             this.phartDiagramRelationGridItemViewModelBindingSource.ResetBindings(false);
+            if (curveId != null)
+            {
+                for (int i = 0; i < _allBindingList.Count; i++)
+                {
+                    if (_allBindingList[i].ID == curveId)
+                    {
+                        gridView1.FocusedRowHandle = i;
+                    }
+                }
+            }
         }
 
         //琛岀偣鍑讳簨浠�
@@ -59,5 +66,19 @@
                 dlg.ShowDialog();
             }
         }
+
+        //琛屽彉鍖栦簨浠�
+        private async void gridView1_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
+        {
+            var vm = this.gridView1.GetCurrentViewModel(_allBindingList);
+            if (vm == null)
+                return;
+            var list = await new BLL.PhartDiagramRelation().GetExByObjectTypeAndObjectID(_objectType, vm.Vmo.ObjectID);
+            var targetItem = list.FirstOrDefault(x => x.ID == vm.ID);
+            if (targetItem != null)
+            {
+                SelectDataEvent.Invoke(targetItem);
+            }
+        }
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3