duheng
2024-12-19 3af811d30c93995e2500bdd2f3795be77cc1a519
水泵曲线修改
已修改12个文件
已添加6个文件
1359 ■■■■■ 文件已修改
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/00-ViewModel/PumpMainViewModel.cs 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/01-import/01-excel/ImportPumpPerform2dByExcelCtrl.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/01-import/01-excel/ImportPumpPerform2dByExcelCtrl.designer.cs 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/01-import/01-excel/ImportPumpPerform2dByExcelDlg.cs 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/01-import/02-image/ImportAssetsExchangerCurveQLByPictureDlg.Designer.cs 262 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/01-import/02-image/ImportAssetsExchangerCurveQLByPictureDlg.cs 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/01-import/02-image/ImportAssetsExchangerCurveQLByPictureDlg.resx 206 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/01-import/03-point/PumpChartPointImport.cs 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/02-Eidt/EditAssetsExchangerCurveQLDlg.Designer.cs 143 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/02-Eidt/EditAssetsExchangerCurveQLDlg.cs 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/02-Eidt/EditAssetsExchangerCurveQLDlg.resx 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/PumpChartMainPage.Designer.cs 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/PumpChartMainPage.cs 162 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/PumpChartMainPage.resx 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/PumpProductMainPage.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/HStation.WinFrmUI.Assets.Core.csproj 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/Yw.WinFrmUI.Phart.Core/02-universal/02-edit/UniversalEditChart.cs 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/Yw.WinFrmUI.Phart.Core/02-universal/02-edit/UniversalEditCtrl.cs 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/00-ViewModel/PumpMainViewModel.cs
@@ -21,22 +21,6 @@
            this.Model = rhs;
        }
        /*       public AssetsPumpMainViewModel(Vmo.AssetsPumpMainVmo rhs) : base()
               {
                   this.SeriesID = rhs.SeriesID;
                   this.RatedPower = rhs.RatedPower;
                   this.RatedEfficiency = rhs.RatedEfficiency;
                   this.Erosion = rhs.Erosion;
                   this.D2 = rhs.D2;
                   this.Name = rhs.Name;
                   this.TagName = rhs.TagName;
                   this.SortCode = rhs.SortCode;
                   this.RatedSpeed = rhs.RatedSpeed;
                   this.RatedHead = rhs.RatedHead;
                   this.RatedFlow = rhs.RatedFlow;
                   this.Description = rhs.Description;
               }*/
        public void Reset(Vmo.AssetsPumpMainVmo rhs)
        {
            this.ID = rhs.ID;
@@ -52,6 +36,7 @@
            this.RatedHead = rhs.RatedHead;
            this.RatedFlow = rhs.RatedFlow;
            this.Description = rhs.Description;
            this.Model = rhs;
        }
        /// <summary>
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/01-import/01-excel/ImportPumpPerform2dByExcelCtrl.cs
@@ -1,4 +1,6 @@
//编辑原始的性能曲线
using Yw.Vmo;
namespace HStation.WinFrmUI
{
    public partial class ImportPumpPerform2dByExcelCtrl : DevExpress.XtraEditors.XtraUserControl
@@ -30,7 +32,7 @@
        /// èŽ·å–æ•°æ®
        /// </summary>
        /// <returns></returns>
        public HStation.Vmo.PhartDiagramRelationExtensionsVmo Get()
        public PhartDiagramExGraphListVmo Get()
        {
            return this.pumpChartExcelImportCtrl1.Get();
        }
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/01-import/01-excel/ImportPumpPerform2dByExcelCtrl.designer.cs
@@ -52,9 +52,10 @@
            layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup();
            layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem();
            layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem();
            emptySpaceItem2 = new DevExpress.XtraLayout.EmptySpaceItem();
            emptySpaceItem3 = new DevExpress.XtraLayout.EmptySpaceItem();
            layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem();
            textEdit2 = new DevExpress.XtraEditors.TextEdit();
            layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem();
            ((ISupportInitialize)bindingSource1).BeginInit();
            ((ISupportInitialize)layoutControl2).BeginInit();
            layoutControl2.SuspendLayout();
@@ -63,9 +64,10 @@
            ((ISupportInitialize)layoutControlGroup1).BeginInit();
            ((ISupportInitialize)layoutControlItem1).BeginInit();
            ((ISupportInitialize)layoutControlItem2).BeginInit();
            ((ISupportInitialize)emptySpaceItem2).BeginInit();
            ((ISupportInitialize)emptySpaceItem3).BeginInit();
            ((ISupportInitialize)layoutControlItem3).BeginInit();
            ((ISupportInitialize)textEdit2.Properties).BeginInit();
            ((ISupportInitialize)layoutControlItem4).BeginInit();
            SuspendLayout();
            // 
            // layoutControl2
@@ -73,6 +75,7 @@
            layoutControl2.Controls.Add(pumpChartExcelImportCtrl1);
            layoutControl2.Controls.Add(btnExcelFilePath);
            layoutControl2.Controls.Add(textEdit1);
            layoutControl2.Controls.Add(textEdit2);
            layoutControl2.Dock = DockStyle.Fill;
            layoutControl2.Location = new Point(0, 0);
            layoutControl2.Name = "layoutControl2";
@@ -84,11 +87,11 @@
            // 
            // pumpChartExcelImportCtrl1
            // 
            pumpChartExcelImportCtrl1.Location = new Point(2, 52);
            pumpChartExcelImportCtrl1.Location = new Point(2, 28);
            pumpChartExcelImportCtrl1.Margin = new Padding(2, 2, 2, 2);
            pumpChartExcelImportCtrl1.Name = "pumpChartExcelImportCtrl1";
            pumpChartExcelImportCtrl1.Size = new Size(996, 606);
            pumpChartExcelImportCtrl1.TabIndex = 3;
            pumpChartExcelImportCtrl1.Size = new Size(996, 630);
            pumpChartExcelImportCtrl1.TabIndex = 4;
            // 
            // btnExcelFilePath
            // 
@@ -99,16 +102,16 @@
            editorButtonImageOptions2.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("editorButtonImageOptions2.SvgImage");
            editorButtonImageOptions2.SvgImageSize = new Size(14, 14);
            btnExcelFilePath.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "", -1, true, true, false, editorButtonImageOptions1, new DevExpress.Utils.KeyShortcut(Keys.None), serializableAppearanceObject1, serializableAppearanceObject2, serializableAppearanceObject3, serializableAppearanceObject4, "导入文件", "Import", superToolTip1, DevExpress.Utils.ToolTipAnchor.Default), new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "", -1, true, true, false, editorButtonImageOptions2, new DevExpress.Utils.KeyShortcut(Keys.None), serializableAppearanceObject5, serializableAppearanceObject6, serializableAppearanceObject7, serializableAppearanceObject8, "模板下载", "Download", superToolTip2, DevExpress.Utils.ToolTipAnchor.Default) });
            btnExcelFilePath.Size = new Size(323, 22);
            btnExcelFilePath.Size = new Size(277, 22);
            btnExcelFilePath.StyleController = layoutControl2;
            btnExcelFilePath.TabIndex = 0;
            btnExcelFilePath.ButtonClick += btnExcelFilePath_ButtonClick;
            // 
            // textEdit1
            // 
            textEdit1.Location = new Point(66, 28);
            textEdit1.Location = new Point(411, 2);
            textEdit1.Name = "textEdit1";
            textEdit1.Size = new Size(323, 20);
            textEdit1.Size = new Size(112, 20);
            textEdit1.StyleController = layoutControl2;
            textEdit1.TabIndex = 2;
            // 
@@ -116,7 +119,7 @@
            // 
            layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True;
            layoutControlGroup1.GroupBordersVisible = false;
            layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { layoutControlItem1, layoutControlItem2, emptySpaceItem2, emptySpaceItem3, layoutControlItem3 });
            layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { layoutControlItem1, layoutControlItem3, layoutControlItem2, layoutControlItem4, emptySpaceItem3 });
            layoutControlGroup1.Name = "Root";
            layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0);
            layoutControlGroup1.Size = new Size(1000, 660);
@@ -127,43 +130,52 @@
            layoutControlItem1.Control = btnExcelFilePath;
            layoutControlItem1.Location = new Point(0, 0);
            layoutControlItem1.Name = "layoutControlItem1";
            layoutControlItem1.Size = new Size(391, 26);
            layoutControlItem1.Size = new Size(345, 26);
            layoutControlItem1.Text = "文件路径:";
            layoutControlItem1.TextSize = new Size(52, 14);
            // 
            // layoutControlItem2
            // 
            layoutControlItem2.Control = textEdit1;
            layoutControlItem2.Location = new Point(0, 26);
            layoutControlItem2.Location = new Point(345, 0);
            layoutControlItem2.Name = "layoutControlItem2";
            layoutControlItem2.Size = new Size(391, 24);
            layoutControlItem2.Size = new Size(180, 26);
            layoutControlItem2.Text = "名称:";
            layoutControlItem2.TextSize = new Size(52, 14);
            //
            // emptySpaceItem2
            //
            emptySpaceItem2.AllowHotTrack = false;
            emptySpaceItem2.Location = new Point(391, 0);
            emptySpaceItem2.Name = "emptySpaceItem2";
            emptySpaceItem2.Size = new Size(609, 26);
            emptySpaceItem2.TextSize = new Size(0, 0);
            // 
            // emptySpaceItem3
            // 
            emptySpaceItem3.AllowHotTrack = false;
            emptySpaceItem3.Location = new Point(391, 26);
            emptySpaceItem3.Location = new Point(706, 0);
            emptySpaceItem3.Name = "emptySpaceItem3";
            emptySpaceItem3.Size = new Size(609, 24);
            emptySpaceItem3.Size = new Size(294, 26);
            emptySpaceItem3.TextSize = new Size(0, 0);
            // 
            // layoutControlItem3
            // 
            layoutControlItem3.Control = pumpChartExcelImportCtrl1;
            layoutControlItem3.Location = new Point(0, 50);
            layoutControlItem3.Location = new Point(0, 26);
            layoutControlItem3.Name = "layoutControlItem3";
            layoutControlItem3.Size = new Size(1000, 610);
            layoutControlItem3.Size = new Size(1000, 634);
            layoutControlItem3.TextSize = new Size(0, 0);
            layoutControlItem3.TextVisible = false;
            //
            // textEdit2
            //
            textEdit2.Location = new Point(591, 2);
            textEdit2.Name = "textEdit2";
            textEdit2.Size = new Size(113, 20);
            textEdit2.StyleController = layoutControl2;
            textEdit2.TabIndex = 3;
            //
            // layoutControlItem4
            //
            layoutControlItem4.Control = textEdit2;
            layoutControlItem4.Location = new Point(525, 0);
            layoutControlItem4.Name = "layoutControlItem4";
            layoutControlItem4.Size = new Size(181, 26);
            layoutControlItem4.Text = "重要度:";
            layoutControlItem4.TextSize = new Size(52, 14);
            // 
            // ImportPumpPerform2dByExcelCtrl
            // 
@@ -181,9 +193,10 @@
            ((ISupportInitialize)layoutControlGroup1).EndInit();
            ((ISupportInitialize)layoutControlItem1).EndInit();
            ((ISupportInitialize)layoutControlItem2).EndInit();
            ((ISupportInitialize)emptySpaceItem2).EndInit();
            ((ISupportInitialize)emptySpaceItem3).EndInit();
            ((ISupportInitialize)layoutControlItem3).EndInit();
            ((ISupportInitialize)textEdit2.Properties).EndInit();
            ((ISupportInitialize)layoutControlItem4).EndInit();
            ResumeLayout(false);
        }
@@ -194,10 +207,11 @@
        private DevExpress.XtraEditors.TextEdit textEdit1;
        private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1;
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1;
        private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem2;
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2;
        private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem3;
        private PumpChartExcelImportCtrl pumpChartExcelImportCtrl1;
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3;
        private DevExpress.XtraEditors.TextEdit textEdit2;
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4;
    }
}
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/01-import/01-excel/ImportPumpPerform2dByExcelDlg.cs
@@ -8,22 +8,21 @@
        public ImportPumpPerform2dByExcelDlg()
        {
            InitializeComponent();
            this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon;
        }
        /// <summary>
        /// å›žè°ƒäº‹ä»¶
        /// </summary>
        public event Func<PhartDiagramRelationExtensionsVmo, Task<bool>> ReloadDataEvent;
        public void SetBindingData()
        {
        }
        public event Func<Vmo.PhartDiagramRelationExtensionsVmo, Task<bool>> ReloadDataEvent;
        //确定
        private async void btnOk_Click(object sender, EventArgs e)
        {
            var vmo = this.importCurveByExcelCtrl1.Get();
            var result = await this.ReloadDataEvent.Invoke(vmo);
            var ExtensionsVmo = new PhartDiagramRelationExtensionsVmo();
            ExtensionsVmo.Diagram = vmo;
            var result = await this.ReloadDataEvent.Invoke(ExtensionsVmo);
            if (!result)
            {
                XtraMessageBox.Show("导入失败!");
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/01-import/02-image/ImportAssetsExchangerCurveQLByPictureDlg.Designer.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,262 @@
namespace HStation.WinFrmUI
{
    partial class ImportPumpPerform2dByImageDlg
    {
        /// <summary>
        /// Required designer variable.
        /// </summary>
        private System.ComponentModel.IContainer components = null;
        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }
        #region Windows Form Designer generated code
        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InitializeComponent()
        {
            DevExpress.XtraEditors.Controls.EditorButtonImageOptions editorButtonImageOptions1 = new DevExpress.XtraEditors.Controls.EditorButtonImageOptions();
            ComponentResourceManager resources = new ComponentResourceManager(typeof(ImportPumpPerform2dByImageDlg));
            DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject1 = new DevExpress.Utils.SerializableAppearanceObject();
            DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject2 = new DevExpress.Utils.SerializableAppearanceObject();
            DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject3 = new DevExpress.Utils.SerializableAppearanceObject();
            DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject4 = new DevExpress.Utils.SerializableAppearanceObject();
            DevExpress.Utils.SuperToolTip superToolTip1 = new DevExpress.Utils.SuperToolTip();
            DevExpress.XtraEditors.Controls.EditorButtonImageOptions editorButtonImageOptions2 = new DevExpress.XtraEditors.Controls.EditorButtonImageOptions();
            DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject5 = new DevExpress.Utils.SerializableAppearanceObject();
            DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject6 = new DevExpress.Utils.SerializableAppearanceObject();
            DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject7 = new DevExpress.Utils.SerializableAppearanceObject();
            DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject8 = new DevExpress.Utils.SerializableAppearanceObject();
            DevExpress.Utils.SuperToolTip superToolTip2 = new DevExpress.Utils.SuperToolTip();
            layoutControl1 = new DevExpress.XtraLayout.LayoutControl();
            btnEditPicture = new DevExpress.XtraEditors.ButtonEdit();
            textEdit2 = new DevExpress.XtraEditors.TextEdit();
            generalOkAndCancelCtrl1 = new GeneralOkAndCancelCtrl();
            panelControl1 = new DevExpress.XtraEditors.PanelControl();
            textEditName = new DevExpress.XtraEditors.TextEdit();
            Root = new DevExpress.XtraLayout.LayoutControlGroup();
            layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem();
            layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem();
            layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem();
            emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem();
            layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem();
            layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem();
            pumpChartImageImportCtrl1 = new PumpChartImageImportCtrl();
            ((ISupportInitialize)layoutControl1).BeginInit();
            layoutControl1.SuspendLayout();
            ((ISupportInitialize)btnEditPicture.Properties).BeginInit();
            ((ISupportInitialize)textEdit2.Properties).BeginInit();
            ((ISupportInitialize)panelControl1).BeginInit();
            panelControl1.SuspendLayout();
            ((ISupportInitialize)textEditName.Properties).BeginInit();
            ((ISupportInitialize)Root).BeginInit();
            ((ISupportInitialize)layoutControlItem1).BeginInit();
            ((ISupportInitialize)layoutControlItem2).BeginInit();
            ((ISupportInitialize)layoutControlItem5).BeginInit();
            ((ISupportInitialize)emptySpaceItem1).BeginInit();
            ((ISupportInitialize)layoutControlItem3).BeginInit();
            ((ISupportInitialize)layoutControlItem4).BeginInit();
            SuspendLayout();
            //
            // layoutControl1
            //
            layoutControl1.Controls.Add(btnEditPicture);
            layoutControl1.Controls.Add(textEdit2);
            layoutControl1.Controls.Add(generalOkAndCancelCtrl1);
            layoutControl1.Controls.Add(panelControl1);
            layoutControl1.Controls.Add(textEditName);
            layoutControl1.Dock = DockStyle.Fill;
            layoutControl1.Location = new Point(0, 0);
            layoutControl1.Name = "layoutControl1";
            layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new Rectangle(1228, 230, 650, 400);
            layoutControl1.Root = Root;
            layoutControl1.Size = new Size(1062, 545);
            layoutControl1.TabIndex = 0;
            layoutControl1.Text = "layoutControl1";
            //
            // btnEditPicture
            //
            btnEditPicture.Location = new Point(76, 12);
            btnEditPicture.Name = "btnEditPicture";
            editorButtonImageOptions1.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("editorButtonImageOptions1.SvgImage");
            editorButtonImageOptions1.SvgImageSize = new Size(14, 14);
            editorButtonImageOptions2.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("editorButtonImageOptions2.SvgImage");
            editorButtonImageOptions2.SvgImageSize = new Size(14, 14);
            btnEditPicture.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "", -1, true, true, false, editorButtonImageOptions1, new DevExpress.Utils.KeyShortcut(Keys.None), serializableAppearanceObject1, serializableAppearanceObject2, serializableAppearanceObject3, serializableAppearanceObject4, "导入文件", "Import", superToolTip1, DevExpress.Utils.ToolTipAnchor.Default), new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "", -1, true, true, false, editorButtonImageOptions2, new DevExpress.Utils.KeyShortcut(Keys.None), serializableAppearanceObject5, serializableAppearanceObject6, serializableAppearanceObject7, serializableAppearanceObject8, "模板下载", "Download", superToolTip2, DevExpress.Utils.ToolTipAnchor.Default) });
            btnEditPicture.Size = new Size(315, 22);
            btnEditPicture.StyleController = layoutControl1;
            btnEditPicture.TabIndex = 0;
            //
            // textEdit2
            //
            textEdit2.Location = new Point(630, 13);
            textEdit2.Name = "textEdit2";
            textEdit2.Properties.AllowNullInput = DevExpress.Utils.DefaultBoolean.False;
            textEdit2.Properties.EditFormat.FormatString = "N0";
            textEdit2.Properties.EditFormat.FormatType = DevExpress.Utils.FormatType.Numeric;
            textEdit2.Properties.MaskSettings.Set("MaskManagerType", typeof(DevExpress.Data.Mask.NumericMaskManager));
            textEdit2.Size = new Size(82, 20);
            textEdit2.StyleController = layoutControl1;
            textEdit2.TabIndex = 3;
            //
            // generalOkAndCancelCtrl1
            //
            generalOkAndCancelCtrl1.ButtonCancelMaxSize = new Size(100, 26);
            generalOkAndCancelCtrl1.ButtonCancelMinSize = new Size(100, 26);
            generalOkAndCancelCtrl1.ButtonOkMaxSize = new Size(100, 26);
            generalOkAndCancelCtrl1.ButtonOkMinSize = new Size(100, 26);
            generalOkAndCancelCtrl1.Location = new Point(12, 507);
            generalOkAndCancelCtrl1.Name = "generalOkAndCancelCtrl1";
            generalOkAndCancelCtrl1.Size = new Size(1038, 26);
            generalOkAndCancelCtrl1.TabIndex = 4;
            //
            // panelControl1
            //
            panelControl1.Controls.Add(pumpChartImageImportCtrl1);
            panelControl1.Location = new Point(12, 38);
            panelControl1.Name = "panelControl1";
            panelControl1.Size = new Size(1038, 465);
            panelControl1.TabIndex = 1;
            //
            // textEditName
            //
            textEditName.Location = new Point(459, 12);
            textEditName.Name = "textEditName";
            textEditName.Size = new Size(103, 20);
            textEditName.StyleController = layoutControl1;
            textEditName.TabIndex = 2;
            //
            // Root
            //
            Root.AppearanceItemCaption.Options.UseTextOptions = true;
            Root.AppearanceItemCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far;
            Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True;
            Root.GroupBordersVisible = false;
            Root.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { layoutControlItem1, layoutControlItem2, layoutControlItem5, emptySpaceItem1, layoutControlItem3, layoutControlItem4 });
            Root.Name = "Root";
            Root.Size = new Size(1062, 545);
            Root.TextVisible = false;
            //
            // layoutControlItem1
            //
            layoutControlItem1.Control = panelControl1;
            layoutControlItem1.Location = new Point(0, 26);
            layoutControlItem1.Name = "layoutControlItem1";
            layoutControlItem1.Size = new Size(1042, 469);
            layoutControlItem1.TextSize = new Size(0, 0);
            layoutControlItem1.TextVisible = false;
            //
            // layoutControlItem2
            //
            layoutControlItem2.Control = generalOkAndCancelCtrl1;
            layoutControlItem2.Location = new Point(0, 495);
            layoutControlItem2.Name = "layoutControlItem2";
            layoutControlItem2.Size = new Size(1042, 30);
            layoutControlItem2.TextSize = new Size(0, 0);
            layoutControlItem2.TextVisible = false;
            //
            // layoutControlItem5
            //
            layoutControlItem5.ContentVertAlignment = DevExpress.Utils.VertAlignment.Center;
            layoutControlItem5.Control = textEdit2;
            layoutControlItem5.Location = new Point(554, 0);
            layoutControlItem5.MaxSize = new Size(150, 24);
            layoutControlItem5.MinSize = new Size(150, 24);
            layoutControlItem5.Name = "layoutControlItem5";
            layoutControlItem5.Size = new Size(150, 26);
            layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
            layoutControlItem5.Text = "重要度:";
            layoutControlItem5.TextSize = new Size(52, 14);
            //
            // emptySpaceItem1
            //
            emptySpaceItem1.AllowHotTrack = false;
            emptySpaceItem1.Location = new Point(704, 0);
            emptySpaceItem1.Name = "emptySpaceItem1";
            emptySpaceItem1.Size = new Size(338, 26);
            emptySpaceItem1.TextSize = new Size(0, 0);
            //
            // layoutControlItem3
            //
            layoutControlItem3.Control = btnEditPicture;
            layoutControlItem3.Location = new Point(0, 0);
            layoutControlItem3.Name = "layoutControlItem3";
            layoutControlItem3.Size = new Size(383, 26);
            layoutControlItem3.Text = "图片路径:";
            layoutControlItem3.TextSize = new Size(52, 14);
            //
            // layoutControlItem4
            //
            layoutControlItem4.Control = textEditName;
            layoutControlItem4.Location = new Point(383, 0);
            layoutControlItem4.Name = "layoutControlItem4";
            layoutControlItem4.Size = new Size(171, 26);
            layoutControlItem4.Text = "名称:";
            layoutControlItem4.TextSize = new Size(52, 14);
            //
            // pumpChartImageImportCtrl1
            //
            pumpChartImageImportCtrl1.Dock = DockStyle.Fill;
            pumpChartImageImportCtrl1.Location = new Point(2, 2);
            pumpChartImageImportCtrl1.Margin = new Padding(2, 2, 2, 2);
            pumpChartImageImportCtrl1.Name = "pumpChartImageImportCtrl1";
            pumpChartImageImportCtrl1.Size = new Size(1034, 461);
            pumpChartImageImportCtrl1.TabIndex = 0;
            //
            // ImportPumpPerform2dByImageDlg
            //
            AutoScaleDimensions = new SizeF(7F, 14F);
            AutoScaleMode = AutoScaleMode.Font;
            ClientSize = new Size(1062, 545);
            Controls.Add(layoutControl1);
            Name = "ImportPumpPerform2dByImageDlg";
            StartPosition = FormStartPosition.CenterParent;
            Text = "通过图片导入";
            ((ISupportInitialize)layoutControl1).EndInit();
            layoutControl1.ResumeLayout(false);
            ((ISupportInitialize)btnEditPicture.Properties).EndInit();
            ((ISupportInitialize)textEdit2.Properties).EndInit();
            ((ISupportInitialize)panelControl1).EndInit();
            panelControl1.ResumeLayout(false);
            ((ISupportInitialize)textEditName.Properties).EndInit();
            ((ISupportInitialize)Root).EndInit();
            ((ISupportInitialize)layoutControlItem1).EndInit();
            ((ISupportInitialize)layoutControlItem2).EndInit();
            ((ISupportInitialize)layoutControlItem5).EndInit();
            ((ISupportInitialize)emptySpaceItem1).EndInit();
            ((ISupportInitialize)layoutControlItem3).EndInit();
            ((ISupportInitialize)layoutControlItem4).EndInit();
            ResumeLayout(false);
        }
        #endregion
        private DevExpress.XtraLayout.LayoutControl layoutControl1;
        private DevExpress.XtraLayout.LayoutControlGroup Root;
        private GeneralOkAndCancelCtrl generalOkAndCancelCtrl1;
        private DevExpress.XtraEditors.PanelControl panelControl1;
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1;
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2;
        private DevExpress.XtraEditors.TextEdit textEdit2;
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5;
        private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1;
        private DevExpress.XtraEditors.ButtonEdit btnEditPicture;
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3;
        private DevExpress.XtraEditors.TextEdit textEditName;
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4;
        private PumpChartImageImportCtrl pumpChartImageImportCtrl1;
    }
}
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/01-import/02-image/ImportAssetsExchangerCurveQLByPictureDlg.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,71 @@
using DevExpress.Mvvm.Native;
using DevExpress.XtraEditors;
using HStation.Vmo;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace HStation.WinFrmUI
{
    public partial class ImportPumpPerform2dByImageDlg : DevExpress.XtraEditors.XtraForm
    {
        public ImportPumpPerform2dByImageDlg()
        {
            InitializeComponent();
            this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon;
            this.layoutControl1.SetupLayoutControl();
            this.generalOkAndCancelCtrl1.OkEvent += GeneralOkAndCancelCtrl1_OkEvent;
        }
        /// <summary>
        ///
        /// </summary>
        public event Func<PhartDiagramRelationExtensionsVmo, Task<bool>> ReloadDataEvent;
        //进:FilePath,  PhartRelation.eGraphType,
        //        å‡º:PhartDiagramExGraphListVmo
        /// <summary>
        ///
        /// </summary>
        public void SetBindingData()
        {
        }
        //确定
        private async void GeneralOkAndCancelCtrl1_OkEvent()
        {
            var diagram = this.pumpChartImageImportCtrl1.Get();
            var vmo = new PhartDiagramRelationExtensionsVmo();
            vmo.Diagram = diagram;
            var result = await this.ReloadDataEvent?.Invoke(vmo);
            if (!result)
            {
                XtraMessageBox.Show("导入失败!");
                return;
            }
            XtraMessageBox.Show("导入成功!");
            this.DialogResult = DialogResult.OK;
            this.Close();
        }
        //导入图片
        private void btnEditPicture_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            var dlg = new OpenFileDialog();
            dlg.Title = "选择图片文件";
            dlg.Filter = "图片|*.png;*.jpg";
            if (dlg.ShowDialog() == DialogResult.OK)
            {
                var fileName = dlg.FileName;
                this.btnEditPicture.EditValue = fileName;
            }
        }
    }
}
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/01-import/02-image/ImportAssetsExchangerCurveQLByPictureDlg.resx
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,206 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
  <!--
    Microsoft ResX Schema
    Version 2.0
    The primary goals of this format is to allow a simple XML format
    that is mostly human readable. The generation and parsing of the
    various data types are done through the TypeConverter classes
    associated with the data types.
    Example:
    ... ado.net/XML headers & schema ...
    <resheader name="resmimetype">text/microsoft-resx</resheader>
    <resheader name="version">2.0</resheader>
    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
        <value>[base64 mime encoded serialized .NET Framework object]</value>
    </data>
    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
        <comment>This is a comment</comment>
    </data>
    There are any number of "resheader" rows that contain simple
    name/value pairs.
    Each data row contains a name, and value. The row also contains a
    type or mimetype. Type corresponds to a .NET class that support
    text/value conversion through the TypeConverter architecture.
    Classes that don't support this are serialized and stored with the
    mimetype set.
    The mimetype is used for serialized objects, and tells the
    ResXResourceReader how to depersist the object. This is currently not
    extensible. For a given mimetype the value must be set accordingly:
    Note - application/x-microsoft.net.object.binary.base64 is the format
    that the ResXResourceWriter will generate, however the reader can
    read any of the formats listed below.
    mimetype: application/x-microsoft.net.object.binary.base64
    value   : The object must be serialized with
            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
            : and then encoded with base64 encoding.
    mimetype: application/x-microsoft.net.object.soap.base64
    value   : The object must be serialized with
            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
            : and then encoded with base64 encoding.
    mimetype: application/x-microsoft.net.object.bytearray.base64
    value   : The object must be serialized into a byte array
            : using a System.ComponentModel.TypeConverter
            : and then encoded with base64 encoding.
    -->
  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
    <xsd:element name="root" msdata:IsDataSet="true">
      <xsd:complexType>
        <xsd:choice maxOccurs="unbounded">
          <xsd:element name="metadata">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" />
              </xsd:sequence>
              <xsd:attribute name="name" use="required" type="xsd:string" />
              <xsd:attribute name="type" type="xsd:string" />
              <xsd:attribute name="mimetype" type="xsd:string" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="assembly">
            <xsd:complexType>
              <xsd:attribute name="alias" type="xsd:string" />
              <xsd:attribute name="name" type="xsd:string" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="data">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="resheader">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" />
            </xsd:complexType>
          </xsd:element>
        </xsd:choice>
      </xsd:complexType>
    </xsd:element>
  </xsd:schema>
  <resheader name="resmimetype">
    <value>text/microsoft-resx</value>
  </resheader>
  <resheader name="version">
    <value>2.0</value>
  </resheader>
  <resheader name="reader">
    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <resheader name="writer">
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <assembly alias="DevExpress.Data.v23.2" name="DevExpress.Data.v23.2, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
  <data name="editorButtonImageOptions1.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40
        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAAMDAAAC77u/
        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
        IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
        MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
        Y2U9InByZXNlcnZlIiBpZD0iT3BlbjIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDMy
        IDMyIj4NCiAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5HcmVlbntmaWxsOiMwMzlDMjM7fQoJLlll
        bGxvd3tmaWxsOiNGRkIxMTU7fQoJLnN0MHtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBjbGFz
        cz0ic3QwIj4NCiAgICA8cGF0aCBkPSJNMTkuMiwxMEgxMlY3YzAtMC42LTAuNC0xLTEtMUgzQzIuNCw2
        LDIsNi41LDIsN3YxOGMwLDAuMiwwLDAuMywwLjEsMC40YzAsMCwwLjEtMC4xLDAuMS0wLjJsNS41LTEw
        ICAgQzgsMTQuNSw4LjcsMTQsOS41LDE0aDEzLjdMMTkuMiwxMHoiIGNsYXNzPSJZZWxsb3ciIC8+DQog
        IDwvZz4NCiAgPHBhdGggZD0iTTI5LjMsMTZIOS42TDQsMjZoMTkuOGMwLjUsMCwxLjEtMC4yLDEuMy0w
        LjZsNC45LTguOUMzMC4xLDE2LjIsMjkuOCwxNiwyOS4zLDE2eiIgY2xhc3M9IlllbGxvdyIgLz4NCiAg
        PHBhdGggZD0iTTI4LDhjMC0zLjMtMi43LTYtNi02cy02LDIuNy02LDZjMC0yLjIsMS44LTQsNC00czQs
        MS44LDQsNGgtNGw2LDZsNi02SDI4eiIgY2xhc3M9IkdyZWVuIiAvPg0KPC9zdmc+Cw==
</value>
  </data>
  <data name="editorButtonImageOptions2.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40
        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAHYNAAAC77u/
        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
        IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
        MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
        Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
        MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5H
        cmVlbntmaWxsOiMwMzlDMjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgkuc3Qwe29wYWNpdHk6MC4z
        O30KPC9zdHlsZT4NCiAgPHBhdGggZD0iTTgsNGgxOHY2aDJWM2MwLTAuNS0wLjUtMS0xLTFIN0M2LjUs
        Miw2LDIuNSw2LDN2N2gyVjR6IiBjbGFzcz0iQmxhY2siIC8+DQogIDxwYXRoIGQ9Ik0yNiwyNkg4di04
        SDZ2OWMwLDAuNSwwLjUsMSwxLDFoMjBjMC41LDAsMS0wLjUsMS0xdi05aC0yVjI2eiIgY2xhc3M9IkJs
        YWNrIiAvPg0KICA8cGF0aCBkPSJNMzEsOEgzQzIuNCw4LDIsOC40LDIsOXYxMGMwLDAuNiwwLjQsMSwx
        LDFoMjhjMC42LDAsMS0wLjQsMS0xVjlDMzIsOC40LDMxLjYsOCwzMSw4eiBNOS4xLDE4bC0xLjMtMi41
        ICBjLTAuMS0wLjEtMC4xLTAuMy0wLjItMC41aDBjMCwwLjEtMC4xLDAuMy0wLjIsMC41TDYuMSwxOEg0
        bDIuNS0zLjlsLTIuMi0zLjloMi4xbDEuMSwyLjNjMC4xLDAuMiwwLjIsMC40LDAuMiwwLjdoMCAgYzAt
        MC4yLDAuMS0wLjQsMC4yLTAuN2wxLjItMi4zaDEuOWwtMi4zLDMuOGwyLjQsMy45SDkuMXogTTE2Ljcs
        MThoLTQuNnYtNy43aDEuN3Y2LjNoMi45VjE4eiBNMjIuNCwxNi45Yy0wLjIsMC4zLTAuNCwwLjUtMC43
        LDAuNyAgcy0wLjYsMC4zLTEsMC40Yy0wLjQsMC4xLTAuOCwwLjEtMS4yLDAuMWMtMC40LDAtMC44LDAt
        MS4yLTAuMWMtMC40LTAuMS0wLjctMC4yLTEtMC4zVjE2YzAuMywwLjMsMC42LDAuNSwxLDAuNnMwLjcs
        MC4yLDEuMSwwLjIgIGMwLjIsMCwwLjQsMCwwLjYtMC4xczAuMy0wLjEsMC40LTAuMmMwLjEtMC4xLDAu
        Mi0wLjIsMC4yLTAuMmMwLjEtMC4xLDAuMS0wLjIsMC4xLTAuM2MwLTAuMiwwLTAuMy0wLjEtMC40ICBj
        LTAuMS0wLjEtMC4yLTAuMi0wLjQtMC4zUzIwLDE1LjEsMTkuOCwxNXMtMC40LTAuMi0wLjctMC4zYy0w
        LjYtMC4zLTEuMS0wLjYtMS4zLTAuOWMtMC4zLTAuNC0wLjQtMC44LTAuNC0xLjMgIGMwLTAuNCwwLjEt
        MC43LDAuMi0xYzAuMi0wLjMsMC40LTAuNSwwLjctMC43YzAuMy0wLjIsMC42LTAuMywxLTAuNHMwLjgt
        MC4xLDEuMi0wLjFjMC40LDAsMC44LDAsMS4xLDAuMWMwLjMsMCwwLjYsMC4xLDAuOSwwLjIgIHYxLjZj
        LTAuMS0wLjEtMC4zLTAuMi0wLjQtMC4ycy0wLjMtMC4xLTAuNS0wLjJjLTAuMiwwLTAuMy0wLjEtMC41
        LTAuMXMtMC4zLDAtMC41LDBjLTAuMiwwLTAuNCwwLTAuNSwwLjFjLTAuMiwwLTAuMywwLjEtMC40LDAu
        MiAgYy0wLjEsMC4xLTAuMiwwLjEtMC4zLDAuMmMtMC4xLDAuMS0wLjEsMC4yLTAuMSwwLjNjMCwwLjEs
        MCwwLjIsMC4xLDAuM2MwLjEsMC4xLDAuMiwwLjIsMC4zLDAuM2MwLjEsMC4xLDAuMywwLjIsMC41LDAu
        MyAgczAuNCwwLjIsMC42LDAuM2MwLjMsMC4xLDAuNiwwLjMsMC44LDAuNGMwLjIsMC4xLDAuNSwwLjMs
        MC42LDAuNWMwLjIsMC4yLDAuMywwLjQsMC40LDAuNnMwLjEsMC41LDAuMSwwLjggIEMyMi42LDE2LjMs
        MjIuNSwxNi42LDIyLjQsMTYuOXogTTI4LjEsMThsLTEuMy0yLjVjLTAuMS0wLjEtMC4xLTAuMy0wLjIt
        MC41aDBjMCwwLjEtMC4xLDAuMy0wLjIsMC41TDI1LjEsMThIMjNsMi41LTMuOWwtMi4yLTMuOSAgaDIu
        MWwxLjEsMi4zYzAuMSwwLjIsMC4yLDAuNCwwLjIsMC43aDBjMC0wLjIsMC4xLTAuNCwwLjItMC43bDEu
        Mi0yLjNoMS45bC0yLjMsMy44bDIuNCwzLjlIMjguMXoiIGNsYXNzPSJHcmVlbiIgLz4NCiAgPGcgY2xh
        c3M9InN0MCI+DQogICAgPHBhdGggZD0iTTMxLDhIM0MyLjQsOCwyLDguNCwyLDl2MTBjMCwwLjYsMC40
        LDEsMSwxaDI4YzAuNiwwLDEtMC40LDEtMVY5QzMyLDguNCwzMS42LDgsMzEsOHogTTkuMSwxOGwtMS4z
        LTIuNSAgIGMtMC4xLTAuMS0wLjEtMC4zLTAuMi0wLjVoMGMwLDAuMS0wLjEsMC4zLTAuMiwwLjVMNi4x
        LDE4SDRsMi41LTMuOWwtMi4yLTMuOWgyLjFsMS4xLDIuM2MwLjEsMC4yLDAuMiwwLjQsMC4yLDAuN2gw
        ICAgYzAtMC4yLDAuMS0wLjQsMC4yLTAuN2wxLjItMi4zaDEuOWwtMi4zLDMuOGwyLjQsMy45SDkuMXog
        TTE2LjcsMThoLTQuNnYtNy43aDEuN3Y2LjNoMi45VjE4eiBNMjIuNCwxNi45ICAgYy0wLjIsMC4zLTAu
        NCwwLjUtMC43LDAuN3MtMC42LDAuMy0xLDAuNGMtMC40LDAuMS0wLjgsMC4xLTEuMiwwLjFjLTAuNCww
        LTAuOCwwLTEuMi0wLjFjLTAuNC0wLjEtMC43LTAuMi0xLTAuM1YxNiAgIGMwLjMsMC4zLDAuNiwwLjUs
        MSwwLjZzMC43LDAuMiwxLjEsMC4yYzAuMiwwLDAuNCwwLDAuNi0wLjFzMC4zLTAuMSwwLjQtMC4yYzAu
        MS0wLjEsMC4yLTAuMiwwLjItMC4yYzAuMS0wLjEsMC4xLTAuMiwwLjEtMC4zICAgYzAtMC4yLDAtMC4z
        LTAuMS0wLjRjLTAuMS0wLjEtMC4yLTAuMi0wLjQtMC4zUzIwLDE1LjEsMTkuOCwxNXMtMC40LTAuMi0w
        LjctMC4zYy0wLjYtMC4zLTEuMS0wLjYtMS4zLTAuOSAgIGMtMC4zLTAuNC0wLjQtMC44LTAuNC0xLjNj
        MC0wLjQsMC4xLTAuNywwLjItMWMwLjItMC4zLDAuNC0wLjUsMC43LTAuN2MwLjMtMC4yLDAuNi0wLjMs
        MS0wLjRzMC44LTAuMSwxLjItMC4xICAgYzAuNCwwLDAuOCwwLDEuMSwwLjFjMC4zLDAsMC42LDAuMSww
        LjksMC4ydjEuNmMtMC4xLTAuMS0wLjMtMC4yLTAuNC0wLjJzLTAuMy0wLjEtMC41LTAuMmMtMC4yLDAt
        MC4zLTAuMS0wLjUtMC4xcy0wLjMsMC0wLjUsMCAgIGMtMC4yLDAtMC40LDAtMC41LDAuMWMtMC4yLDAt
        MC4zLDAuMS0wLjQsMC4yYy0wLjEsMC4xLTAuMiwwLjEtMC4zLDAuMmMtMC4xLDAuMS0wLjEsMC4yLTAu
        MSwwLjNjMCwwLjEsMCwwLjIsMC4xLDAuMyAgIGMwLjEsMC4xLDAuMiwwLjIsMC4zLDAuM2MwLjEsMC4x
        LDAuMywwLjIsMC41LDAuM3MwLjQsMC4yLDAuNiwwLjNjMC4zLDAuMSwwLjYsMC4zLDAuOCwwLjRjMC4y
        LDAuMSwwLjUsMC4zLDAuNiwwLjUgICBjMC4yLDAuMiwwLjMsMC40LDAuNCwwLjZzMC4xLDAuNSwwLjEs
        MC44QzIyLjYsMTYuMywyMi41LDE2LjYsMjIuNCwxNi45eiBNMjguMSwxOGwtMS4zLTIuNWMtMC4xLTAu
        MS0wLjEtMC4zLTAuMi0wLjVoMCAgIGMwLDAuMS0wLjEsMC4zLTAuMiwwLjVMMjUuMSwxOEgyM2wyLjUt
        My45bC0yLjItMy45aDIuMWwxLjEsMi4zYzAuMSwwLjIsMC4yLDAuNCwwLjIsMC43aDBjMC0wLjIsMC4x
        LTAuNCwwLjItMC43bDEuMi0yLjNoMS45ICAgbC0yLjMsMy44bDIuNCwzLjlIMjguMXoiIGNsYXNzPSJC
        bHVlIiAvPg0KICA8L2c+DQo8L3N2Zz4L
</value>
  </data>
</root>
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/01-import/03-point/PumpChartPointImport.cs
@@ -1,4 +1,5 @@
using DevExpress.XtraEditors;
using HStation.Vmo;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@@ -20,11 +21,29 @@
        public void SetBindingData(Vmo.AssetsPumpMainVmo vmo)
        {
            this.pumpChartPointImportCtrl1.SetBindingData(vmo.RatedFlow, vmo.RatedHead, vmo.RatedSpeed, vmo.RatedEfficiency);
            this.pumpChartPointImportCtrl1.SetBindingData(vmo.RatedFlow, vmo.RatedHead, vmo.RatedSpeed, vmo.RatedEfficiency.Value);
        }
        private void btnOk_Click(object sender, EventArgs e)
        /// <summary>
        /// å›žè°ƒäº‹ä»¶
        /// </summary>
        public event Func<Vmo.PhartDiagramRelationExtensionsVmo, Task<bool>> ReloadDataEvent;
        //确定
        private async void btnOk_Click(object sender, EventArgs e)
        {
            var vmo = this.pumpChartPointImportCtrl1.Get();
            var ExtensionsVmo = new PhartDiagramRelationExtensionsVmo();
            ExtensionsVmo.Diagram = vmo;
            var result = await this.ReloadDataEvent.Invoke(ExtensionsVmo);
            if (!result)
            {
                XtraMessageBox.Show("导入失败!");
                return;
            }
            XtraMessageBox.Show("导入成功!");
            this.DialogResult = DialogResult.OK;
            this.Close();
        }
    }
}
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/02-Eidt/EditAssetsExchangerCurveQLDlg.Designer.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,143 @@
namespace HStation.WinFrmUI
{
    partial class EditAssetsPumpPerform2dDlg
    {
        /// <summary>
        /// Required designer variable.
        /// </summary>
        private System.ComponentModel.IContainer components = null;
        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }
        #region Windows Form Designer generated code
        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InitializeComponent()
        {
            layoutControl1 = new DevExpress.XtraLayout.LayoutControl();
            generalOkAndCancelCtrl1 = new GeneralOkAndCancelCtrl();
            Root = new DevExpress.XtraLayout.LayoutControlGroup();
            layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem();
            layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem();
            panelControl1 = new DevExpress.XtraEditors.PanelControl();
            pumpChartEditCtrl1 = new PumpChartEditCtrl();
            ((ISupportInitialize)layoutControl1).BeginInit();
            layoutControl1.SuspendLayout();
            ((ISupportInitialize)Root).BeginInit();
            ((ISupportInitialize)layoutControlItem2).BeginInit();
            ((ISupportInitialize)layoutControlItem1).BeginInit();
            ((ISupportInitialize)panelControl1).BeginInit();
            panelControl1.SuspendLayout();
            SuspendLayout();
            //
            // layoutControl1
            //
            layoutControl1.Controls.Add(generalOkAndCancelCtrl1);
            layoutControl1.Controls.Add(panelControl1);
            layoutControl1.Dock = DockStyle.Fill;
            layoutControl1.Location = new Point(0, 0);
            layoutControl1.Name = "layoutControl1";
            layoutControl1.Root = Root;
            layoutControl1.Size = new Size(898, 552);
            layoutControl1.TabIndex = 0;
            layoutControl1.Text = "layoutControl1";
            //
            // generalOkAndCancelCtrl1
            //
            generalOkAndCancelCtrl1.ButtonCancelMaxSize = new Size(100, 26);
            generalOkAndCancelCtrl1.ButtonCancelMinSize = new Size(100, 26);
            generalOkAndCancelCtrl1.ButtonOkMaxSize = new Size(100, 26);
            generalOkAndCancelCtrl1.ButtonOkMinSize = new Size(100, 26);
            generalOkAndCancelCtrl1.Location = new Point(12, 514);
            generalOkAndCancelCtrl1.Name = "generalOkAndCancelCtrl1";
            generalOkAndCancelCtrl1.Size = new Size(874, 26);
            generalOkAndCancelCtrl1.TabIndex = 5;
            //
            // Root
            //
            Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True;
            Root.GroupBordersVisible = false;
            Root.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { layoutControlItem1, layoutControlItem2 });
            Root.Name = "Root";
            Root.Size = new Size(898, 552);
            Root.TextVisible = false;
            //
            // layoutControlItem2
            //
            layoutControlItem2.Control = generalOkAndCancelCtrl1;
            layoutControlItem2.Location = new Point(0, 502);
            layoutControlItem2.Name = "layoutControlItem2";
            layoutControlItem2.Size = new Size(878, 30);
            layoutControlItem2.TextSize = new Size(0, 0);
            layoutControlItem2.TextVisible = false;
            //
            // layoutControlItem1
            //
            layoutControlItem1.Control = panelControl1;
            layoutControlItem1.Location = new Point(0, 0);
            layoutControlItem1.Name = "layoutControlItem1";
            layoutControlItem1.Size = new Size(878, 502);
            layoutControlItem1.TextSize = new Size(0, 0);
            layoutControlItem1.TextVisible = false;
            //
            // panelControl1
            //
            panelControl1.Controls.Add(pumpChartEditCtrl1);
            panelControl1.Location = new Point(12, 12);
            panelControl1.Name = "panelControl1";
            panelControl1.Size = new Size(874, 498);
            panelControl1.TabIndex = 4;
            //
            // pumpChartEditCtrl1
            //
            pumpChartEditCtrl1.Dock = DockStyle.Fill;
            pumpChartEditCtrl1.Location = new Point(2, 2);
            pumpChartEditCtrl1.Margin = new Padding(2, 2, 2, 2);
            pumpChartEditCtrl1.Name = "pumpChartEditCtrl1";
            pumpChartEditCtrl1.Size = new Size(870, 494);
            pumpChartEditCtrl1.TabIndex = 0;
            //
            // EditAssetsPumpPerform2dDlg
            //
            AutoScaleDimensions = new SizeF(7F, 14F);
            AutoScaleMode = AutoScaleMode.Font;
            ClientSize = new Size(898, 552);
            Controls.Add(layoutControl1);
            Name = "EditAssetsPumpPerform2dDlg";
            StartPosition = FormStartPosition.CenterParent;
            Text = "编辑曲线";
            ((ISupportInitialize)layoutControl1).EndInit();
            layoutControl1.ResumeLayout(false);
            ((ISupportInitialize)Root).EndInit();
            ((ISupportInitialize)layoutControlItem2).EndInit();
            ((ISupportInitialize)layoutControlItem1).EndInit();
            ((ISupportInitialize)panelControl1).EndInit();
            panelControl1.ResumeLayout(false);
            ResumeLayout(false);
        }
        #endregion
        private DevExpress.XtraLayout.LayoutControl layoutControl1;
        private GeneralOkAndCancelCtrl generalOkAndCancelCtrl1;
        private DevExpress.XtraLayout.LayoutControlGroup Root;
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2;
        private DevExpress.XtraEditors.PanelControl panelControl1;
        private PumpChartEditCtrl pumpChartEditCtrl1;
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1;
    }
}
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/02-Eidt/EditAssetsExchangerCurveQLDlg.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,57 @@
using DevExpress.XtraEditors;
using HStation.Vmo;
using Yw.Vmo;
namespace HStation.WinFrmUI
{
    public partial class EditAssetsPumpPerform2dDlg : DevExpress.XtraEditors.XtraForm
    {
        public EditAssetsPumpPerform2dDlg()
        {
            InitializeComponent();
            this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon;
            this.layoutControl1.SetupLayoutControl();
            this.generalOkAndCancelCtrl1.OkEvent += GeneralOkAndCancelCtrl1_OkEvent;
        }
        /// <summary>
        ///
        /// </summary>
        public event Func<PhartDiagramRelationExtensionsVmo, Task<bool>> ReloadDataEvent;
        private PhartDiagramRelationExtensionsVmo _vmo = null;
        /// <summary>
        /// ç»‘定数据
        /// </summary>
        public void SetBindingData(PhartDiagramRelationExtensionsVmo vmo)
        {
            if (vmo == null)
            {
                return;
            }
            _vmo = vmo;
            this.pumpChartEditCtrl1.SetBindingData(vmo.Diagram, 0);
        }
        //确定
        private async void GeneralOkAndCancelCtrl1_OkEvent()
        {
            if (_vmo == null)
            {
                return;
            }
            var diagram = this.pumpChartEditCtrl1.Get();
            _vmo.Diagram = diagram;
            var result = await this.ReloadDataEvent?.Invoke(_vmo);
            if (!result)
            {
                XtraMessageBox.Show("导入失败!");
                return;
            }
            XtraMessageBox.Show("导入成功!");
            this.DialogResult = DialogResult.OK;
            this.Close();
        }
    }
}
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/02-Eidt/EditAssetsExchangerCurveQLDlg.resx
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
  <!--
    Microsoft ResX Schema
    Version 2.0
    The primary goals of this format is to allow a simple XML format
    that is mostly human readable. The generation and parsing of the
    various data types are done through the TypeConverter classes
    associated with the data types.
    Example:
    ... ado.net/XML headers & schema ...
    <resheader name="resmimetype">text/microsoft-resx</resheader>
    <resheader name="version">2.0</resheader>
    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
        <value>[base64 mime encoded serialized .NET Framework object]</value>
    </data>
    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
        <comment>This is a comment</comment>
    </data>
    There are any number of "resheader" rows that contain simple
    name/value pairs.
    Each data row contains a name, and value. The row also contains a
    type or mimetype. Type corresponds to a .NET class that support
    text/value conversion through the TypeConverter architecture.
    Classes that don't support this are serialized and stored with the
    mimetype set.
    The mimetype is used for serialized objects, and tells the
    ResXResourceReader how to depersist the object. This is currently not
    extensible. For a given mimetype the value must be set accordingly:
    Note - application/x-microsoft.net.object.binary.base64 is the format
    that the ResXResourceWriter will generate, however the reader can
    read any of the formats listed below.
    mimetype: application/x-microsoft.net.object.binary.base64
    value   : The object must be serialized with
            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
            : and then encoded with base64 encoding.
    mimetype: application/x-microsoft.net.object.soap.base64
    value   : The object must be serialized with
            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
            : and then encoded with base64 encoding.
    mimetype: application/x-microsoft.net.object.bytearray.base64
    value   : The object must be serialized into a byte array
            : using a System.ComponentModel.TypeConverter
            : and then encoded with base64 encoding.
    -->
  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
    <xsd:element name="root" msdata:IsDataSet="true">
      <xsd:complexType>
        <xsd:choice maxOccurs="unbounded">
          <xsd:element name="metadata">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" />
              </xsd:sequence>
              <xsd:attribute name="name" use="required" type="xsd:string" />
              <xsd:attribute name="type" type="xsd:string" />
              <xsd:attribute name="mimetype" type="xsd:string" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="assembly">
            <xsd:complexType>
              <xsd:attribute name="alias" type="xsd:string" />
              <xsd:attribute name="name" type="xsd:string" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="data">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="resheader">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" />
            </xsd:complexType>
          </xsd:element>
        </xsd:choice>
      </xsd:complexType>
    </xsd:element>
  </xsd:schema>
  <resheader name="resmimetype">
    <value>text/microsoft-resx</value>
  </resheader>
  <resheader name="version">
    <value>2.0</value>
  </resheader>
  <resheader name="reader">
    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <resheader name="writer">
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
</root>
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/PumpChartMainPage.Designer.cs
@@ -28,6 +28,7 @@
        /// </summary>
        private void InitializeComponent()
        {
            components = new Container();
            ComponentResourceManager resources = new ComponentResourceManager(typeof(PumpChartMainPage));
            ribbonControl1 = new DevExpress.XtraBars.Ribbon.RibbonControl();
            BtnAdd = new DevExpress.XtraBars.BarButtonItem();
@@ -36,19 +37,28 @@
            barBtnUpdateimportance = new DevExpress.XtraBars.BarButtonItem();
            barBtnOtherName = new DevExpress.XtraBars.BarButtonItem();
            barBtnEditChart = new DevExpress.XtraBars.BarButtonItem();
            barBtnImportByPicture = new DevExpress.XtraBars.BarButtonItem();
            ribbonPage1 = new DevExpress.XtraBars.Ribbon.RibbonPage();
            ribbonPageGroup1 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup();
            ribbonPageGroup2 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup();
            dockManager1 = new DevExpress.XtraBars.Docking.DockManager(components);
            dockPanel1 = new DevExpress.XtraBars.Docking.DockPanel();
            dockPanel1_Container = new DevExpress.XtraBars.Docking.ControlContainer();
            phartDiagramRelationListCtrl1 = new PhartDiagramRelationListCtrl();
            pumpChartViewCtrl1 = new PumpChartViewCtrl();
            ((ISupportInitialize)ribbonControl1).BeginInit();
            ((ISupportInitialize)dockManager1).BeginInit();
            dockPanel1.SuspendLayout();
            dockPanel1_Container.SuspendLayout();
            SuspendLayout();
            // 
            // ribbonControl1
            // 
            ribbonControl1.ExpandCollapseItem.Id = 0;
            ribbonControl1.ItemPanelStyle = DevExpress.XtraBars.Ribbon.RibbonItemPanelStyle.Classic;
            ribbonControl1.Items.AddRange(new DevExpress.XtraBars.BarItem[] { ribbonControl1.ExpandCollapseItem, BtnAdd, barBtnImportByExcel, barBtnDelete, barBtnUpdateimportance, barBtnOtherName, barBtnEditChart });
            ribbonControl1.Items.AddRange(new DevExpress.XtraBars.BarItem[] { ribbonControl1.ExpandCollapseItem, BtnAdd, barBtnImportByExcel, barBtnDelete, barBtnUpdateimportance, barBtnOtherName, barBtnEditChart, barBtnImportByPicture });
            ribbonControl1.Location = new Point(0, 0);
            ribbonControl1.MaxItemId = 33;
            ribbonControl1.MaxItemId = 34;
            ribbonControl1.Name = "ribbonControl1";
            ribbonControl1.Pages.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPage[] { ribbonPage1 });
            ribbonControl1.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.False;
@@ -105,6 +115,14 @@
            barBtnEditChart.Name = "barBtnEditChart";
            barBtnEditChart.ItemClick += barBtnEditChart_ItemClick;
            // 
            // barBtnImportByPicture
            //
            barBtnImportByPicture.Caption = "图片";
            barBtnImportByPicture.Id = 33;
            barBtnImportByPicture.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnImportByPicture.ImageOptions.SvgImage");
            barBtnImportByPicture.Name = "barBtnImportByPicture";
            barBtnImportByPicture.ItemClick += barBtnImportByPicture_ItemClick;
            //
            // ribbonPage1
            // 
            ribbonPage1.Groups.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPageGroup[] { ribbonPageGroup1, ribbonPageGroup2 });
@@ -114,6 +132,7 @@
            // ribbonPageGroup1
            // 
            ribbonPageGroup1.ItemLinks.Add(barBtnImportByExcel, true);
            ribbonPageGroup1.ItemLinks.Add(barBtnImportByPicture);
            ribbonPageGroup1.Name = "ribbonPageGroup1";
            ribbonPageGroup1.Text = "导入";
            // 
@@ -126,16 +145,64 @@
            ribbonPageGroup2.Name = "ribbonPageGroup2";
            ribbonPageGroup2.Text = "操作";
            // 
            // dockManager1
            //
            dockManager1.Form = this;
            dockManager1.RootPanels.AddRange(new DevExpress.XtraBars.Docking.DockPanel[] { dockPanel1 });
            dockManager1.TopZIndexControls.AddRange(new string[] { "DevExpress.XtraBars.BarDockControl", "DevExpress.XtraBars.StandaloneBarDockControl", "System.Windows.Forms.MenuStrip", "System.Windows.Forms.StatusStrip", "System.Windows.Forms.StatusBar", "DevExpress.XtraBars.Ribbon.RibbonStatusBar", "DevExpress.XtraBars.Ribbon.RibbonControl", "DevExpress.XtraBars.Navigation.OfficeNavigationBar", "DevExpress.XtraBars.Navigation.TileNavPane", "DevExpress.XtraBars.TabFormControl", "DevExpress.XtraBars.FluentDesignSystem.FluentDesignFormControl", "DevExpress.XtraBars.ToolbarForm.ToolbarFormControl" });
            //
            // dockPanel1
            //
            dockPanel1.Controls.Add(dockPanel1_Container);
            dockPanel1.Dock = DevExpress.XtraBars.Docking.DockingStyle.Left;
            dockPanel1.ID = new Guid("7665f850-caee-40d7-a6f4-2718b4e99f9d");
            dockPanel1.Location = new Point(0, 101);
            dockPanel1.Name = "dockPanel1";
            dockPanel1.OriginalSize = new Size(200, 200);
            dockPanel1.Size = new Size(200, 462);
            dockPanel1.Text = "曲线列表";
            //
            // dockPanel1_Container
            //
            dockPanel1_Container.Controls.Add(phartDiagramRelationListCtrl1);
            dockPanel1_Container.Location = new Point(3, 26);
            dockPanel1_Container.Name = "dockPanel1_Container";
            dockPanel1_Container.Size = new Size(193, 433);
            dockPanel1_Container.TabIndex = 0;
            //
            // phartDiagramRelationListCtrl1
            //
            phartDiagramRelationListCtrl1.BorderVisible = true;
            phartDiagramRelationListCtrl1.Dock = DockStyle.Fill;
            phartDiagramRelationListCtrl1.Location = new Point(0, 0);
            phartDiagramRelationListCtrl1.Name = "phartDiagramRelationListCtrl1";
            phartDiagramRelationListCtrl1.Size = new Size(193, 433);
            phartDiagramRelationListCtrl1.TabIndex = 0;
            //
            // pumpChartViewCtrl1
            //
            pumpChartViewCtrl1.Dock = DockStyle.Fill;
            pumpChartViewCtrl1.Location = new Point(200, 101);
            pumpChartViewCtrl1.Margin = new Padding(2, 2, 2, 2);
            pumpChartViewCtrl1.Name = "pumpChartViewCtrl1";
            pumpChartViewCtrl1.Size = new Size(678, 462);
            pumpChartViewCtrl1.TabIndex = 2;
            //
            // PumpChartMainPage
            // 
            Appearance.BackColor = SystemColors.Control;
            Appearance.Options.UseBackColor = true;
            AutoScaleDimensions = new SizeF(7F, 14F);
            AutoScaleMode = AutoScaleMode.Font;
            Controls.Add(pumpChartViewCtrl1);
            Controls.Add(dockPanel1);
            Controls.Add(ribbonControl1);
            Name = "PumpChartMainPage";
            Size = new Size(878, 563);
            ((ISupportInitialize)ribbonControl1).EndInit();
            ((ISupportInitialize)dockManager1).EndInit();
            dockPanel1.ResumeLayout(false);
            dockPanel1_Container.ResumeLayout(false);
            ResumeLayout(false);
            PerformLayout();
        }
@@ -152,5 +219,11 @@
        private DevExpress.XtraBars.Ribbon.RibbonPage ribbonPage1;
        private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup1;
        private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup2;
        private DevExpress.XtraBars.BarButtonItem barBtnImportByPicture;
        private DevExpress.XtraBars.Docking.DockManager dockManager1;
        private PumpChartViewCtrl pumpChartViewCtrl1;
        private DevExpress.XtraBars.Docking.DockPanel dockPanel1;
        private DevExpress.XtraBars.Docking.ControlContainer dockPanel1_Container;
        private PhartDiagramRelationListCtrl phartDiagramRelationListCtrl1;
    }
}
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/PumpChartMainPage.cs
@@ -1,33 +1,129 @@
namespace HStation.WinFrmUI
using DevExpress.XtraEditors;
using HStation.Vmo;
using Yw;
namespace HStation.WinFrmUI
{
    public partial class PumpChartMainPage : DocumentPage
    {
        public PumpChartMainPage()
        {
            InitializeComponent();
            this.phartDiagramRelationListCtrl1.SelectedChangedEvent += PhartDiagramRelationListCtrl1_SelectedChangedEvent;
        }
        private AssetsPumpMainVmo _vmo;
        private List<PhartDiagramRelationVmo> _allBindingList;
        private PhartDiagramRelationVmo _relation = null;
        public async void SetBindingData(AssetsPumpMainVmo vmo)
        {
            if (vmo == null)
            {
                return;
            }
            _vmo = vmo;
            this.PageTitle.Caption = $"{vmo.Name}\r\n损失曲线";
            _allBindingList = new List<PhartDiagramRelationVmo>();
            var allList = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance
               .GetByObjectTypeAndObjectID(HStation.Assets.DataType.PumpMain, vmo.ID);
            allList?.ForEach(x => _allBindingList.Add(x));
            this.phartDiagramRelationListCtrl1.SetBindingData(_allBindingList);
        }
        //选择改变
        private void PhartDiagramRelationListCtrl1_SelectedChangedEvent(PhartDiagramRelationVmo obj)
        {
            _relation = obj;
            LoadPhart(_relation);
        }
        //加载图表
        private async void LoadPhart(PhartDiagramRelationVmo relation)
        {
            if (relation == null)
            {
                this.pumpChartViewCtrl1.SetBindingData(null, default);
                return;
            }
            var vmo = await BLLFactory<Yw.BLL.PhartDiagramExtensions>.Instance.GetByID(relation.DiagramID);
            this.pumpChartViewCtrl1.SetBindingData(vmo, _vmo.RatedSpeed);
        }
        //表格
        private void barBtnImportByExcel_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            var dlg = new ImportPumpPerform2dByExcelDlg();
            dlg.SetBindingData();
            dlg.ReloadDataEvent += async (rhs) =>
            {
                var bll = new BLL.PhartDiagramRelation();
                var id = await bll.InsertEx(rhs);
                if (id > 0)
                {
                    return true;
                }
                return true;
            };
           {
               var bll = new BLL.PhartDiagramRelation();
               var id = await bll.InsertEx(rhs);
               if (id > 0)
               {
                   var vmo = new PhartDiagramRelationVmo(rhs);
                   var relationId = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance.Insert(vmo);
                   if (relationId > 0)
                   {
                       _allBindingList.Add(rhs);
                       this.phartDiagramRelationListCtrl1.SetBindingData(_allBindingList);
                       return true;
                   }
                   return false;
               }
               return false;
           };
            dlg.ShowDialog();
        }
        //图片
        private void barBtnImportByPicture_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            var dlg = new ImportPumpPerform2dByExcelDlg();
            dlg.ReloadDataEvent += async (rhs) =>
           {
               var bll = new BLL.PhartDiagramRelation();
               var id = await bll.InsertEx(rhs);
               if (id > 0)
               {
                   var vmo = new PhartDiagramRelationVmo(rhs);
                   var relationId = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance.Insert(vmo);
                   if (relationId > 0)
                   {
                       _allBindingList.Add(rhs);
                       this.phartDiagramRelationListCtrl1.SetBindingData(_allBindingList);
                       return true;
                   }
                   return false;
               }
               return false;
           };
            dlg.ShowDialog();
        }
        //编辑
        private void barBtnEditChart_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        private async void barBtnEditChart_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            var vm = GetCurrentViewModel();
            if (vm == null)
            {
                return;
            }
            var dlg = new EditAssetsPumpPerform2dDlg();
            var vmo = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance.GetExByID(vm.DiagramID);
            dlg.SetBindingData(vmo);
            dlg.ReloadDataEvent += async (rhs) =>
           {
               var bll = new BLL.PhartDiagramRelation();
               var bol = await bll.Update(rhs);
               if (bol)
               {
                   vm.Reset(rhs);
                   return true;
               }
               return true;
           };
            dlg.ShowDialog();
        }
        //别名
@@ -41,8 +137,48 @@
        }
        //删除
        private void barBtnDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        private async void barBtnDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            var vm = GetCurrentViewModel();
            if (vm == null)
            {
                return;
            }
            var result = XtraMessageBox.Show("请问确认删除当前数据吗?", "询问", MessageBoxButtons.YesNo) == DialogResult.Yes;
            if (!result)
            {
                return;
            }
            var bol = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance.DeleteByID(vm.ID);
            if (!bol)
            {
                TipFormHelper.ShowError("删除失败!");
                return;
            }
            _allBindingList.Remove(vm);
            this.phartDiagramRelationListCtrl1.SetBindingData(_allBindingList);
            TipFormHelper.ShowSucceed("删除成功!");
        }
        //获取当前
        private PhartDiagramRelationVmo GetCurrentViewModel()
        {
            if (_allBindingList == null)
            {
                TipFormHelper.ShowError("数据初始化错误!");
                return null;
            }
            if (_allBindingList.Count < 1)
            {
                TipFormHelper.ShowInfo("无数据!");
                return null;
            }
            if (_relation == null)
            {
                TipFormHelper.ShowWarn("请选择数据行!");
                return null;
            }
            return _relation;
        }
    }
}
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/PumpChartMainPage.resx
@@ -280,4 +280,37 @@
        LDE2eiAgIE0xNiwyMnY0aDRMMTYsMjJ6IiBjbGFzcz0iQmx1ZSIgLz4NCjwvc3ZnPgs=
</value>
  </data>
  <data name="barBtnImportByPicture.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40
        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAACwFAAAC77u/
        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
        IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
        MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
        Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
        MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzczNzM3NDt9Cgku
        WWVsbG93e2ZpbGw6I0ZDQjAxQjt9CgkuR3JlZW57ZmlsbDojMTI5QzQ5O30KCS5CbHVle2ZpbGw6IzM4
        N0NCNzt9CgkuUmVke2ZpbGw6I0QwMjEyNzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
        Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tk
        aXNwbGF5Om5vbmU7ZmlsbDojNzM3Mzc0O30KPC9zdHlsZT4NCiAgPHBhdGggZD0iTTQsNlYzYzAtMC41
        LDAuNS0xLDEtMWgyMmMwLjUsMCwxLDAuNSwxLDF2M2gtMlY0SDZ2Mkg0eiBNMjYsMTh2MTBINlYxOEg0
        djExYzAsMC41LDAuNSwxLDEsMWgyMiAgYzAuNSwwLDEtMC41LDEtMVYxOEgyNnoiIGNsYXNzPSJCbGFj
        ayIgLz4NCiAgPHBhdGggZD0iTTkuNiwxMC42YzAsMS0wLjQsMS4yLTEsMS4ySDcuMlY5LjRoMS40Qzku
        Myw5LjQsOS42LDkuNSw5LjYsMTAuNnogTTMwLDZ2MTJIMlY2SDMweiBNMTEuNCwxMC42ICBjMC0yLjMt
        MS4xLTIuNi0yLjctMi42SDUuNUg0LjZ2MS4zaDAuOXY1LjRINC42VjE2aDAuOWgyLjZ2LTEuM0g3LjJ2
        LTEuNmgxLjRDMTAuMywxMy4xLDExLjQsMTIuOSwxMS40LDEwLjZ6IE0yMC4xLDhoLTMuNnYxLjNoMC45
        ICB2My42aDBMMTQuOCw4aC0yLjh2MS4zSDEzdjUuNGgtMC45VjE2aDMuNnYtMS4zaC0wLjl2LTMuNmgw
        bDIuNyw0LjloMS44VjkuM2gwLjlWOHogTTI3LjQsMTEuN2gtMy4yVjEzaDEuNnYxLjQgIGMtMC40LDAu
        Mi0xLDAuMy0xLjUsMC4zYy0wLjMsMC0wLjYtMC4xLTAuOC0wLjFjLTAuOC0wLjItMC45LTEuMS0wLjkt
        MS42VjExYzAtMS43LDEuMi0xLjcsMi4yLTEuN2MwLjEsMCwwLjMsMCwwLjYsMHYwLjloMS41VjguMSAg
        Yy0wLjgtMC4yLTEuNi0wLjItMi40LTAuMmMtMC41LDAtMC45LDAtMS40LDAuMWMtMi4yLDAuNS0yLjIs
        Mi4xLTIuMiwzdjEuOWMwLDAuOSwwLjEsMi41LDIuMiwzYzAuNCwwLjEsMC44LDAuMSwxLjIsMC4yICBj
        MS4yLDAsMi4yLTAuNCwyLjktMC44bDAuMi0wLjFWMTEuN3oiIGNsYXNzPSJHcmVlbiIgLz4NCjwvc3Zn
        Pgs=
</value>
  </data>
  <metadata name="dockManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>17, 17</value>
  </metadata>
</root>
WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/PumpProductMainPage.cs
@@ -182,7 +182,7 @@
                    return;
                }
                var page = new PumpChartMainPage();
                // page.InitialDataSource(currentVm.ID);
                page.SetBindingData(currentVm.Model);
                page.PageTitle.Caption = guid.Function;
                page.PageGuid = guid;
                CreatePage(page, guid);
WinFrmUI/HStation.WinFrmUI.Assets.Core/HStation.WinFrmUI.Assets.Core.csproj
@@ -75,6 +75,12 @@
    <Compile Update="01-pump\07-PumpChart\01-import\01-excel\ImportPumpPerform2dByExcelDlg.cs">
      <SubType>Form</SubType>
    </Compile>
    <Compile Update="01-pump\07-PumpChart\01-import\02-image\ImportAssetsExchangerCurveQLByPictureDlg.cs">
      <SubType>Form</SubType>
    </Compile>
    <Compile Update="01-pump\07-PumpChart\02-Eidt\EditAssetsExchangerCurveQLDlg.cs">
      <SubType>Form</SubType>
    </Compile>
    <Compile Update="02-adapting\EditAdaptingMainDlg.cs" />
    <Compile Update="02-adapting\AddAdaptingMainDlg.cs" />
    <Compile Update="01-pump\03-AssetsPumpType\EditAssetsPumpTypeDlg.cs">
@@ -426,7 +432,6 @@
  </ItemGroup>
  <ItemGroup>
    <Folder Include="01-pump\07-PumpChart\01-import\02-image\" />
    <Folder Include="12-package\02-main\01-EditPumpPartProp\" />
  </ItemGroup>
WinFrmUI/Yw.WinFrmUI.Phart.Core/02-universal/02-edit/UniversalEditChart.cs
@@ -19,18 +19,18 @@
        private XYDiagram _diagram;
        private XYDiagramDefaultPane _default_pane;
        private AxisX _axis_x;
        private AxisY _axis_y;
        private AxisY _axis_y;
        private List<Yw.Geometry.Point2d> _point_pt_list;
        private List<Yw.Geometry.Point2d> _point_pt_list;
        private List<Yw.Geometry.Point2d> _line_pt_list;
        private UniversalCoordinate _coordinate;
        private bool _initial_data = false;
        private bool _initial_data = false;
        private bool _mouse_mode = false;//鼠标模式
        #endregion
        #endregion Private Variable
        #region Public Variable
        #region Public Variable
        /// <summary>
        /// X轴标题
@@ -61,7 +61,7 @@
                _axis_y.Title.Text = value;
            }
        }
        /// <summary>
        /// é¼ æ ‡æ¨¡å¼
        /// </summary>
@@ -73,11 +73,11 @@
            }
            set
            {
                _mouse_mode = value;
                _mouse_mode = value;
            }
        }
        #endregion
        #endregion Public Variable
        #region Public Evnet
@@ -91,7 +91,9 @@
        /// </summary>
        public event Action<List<Yw.Geometry.Point2d>> DefinePointChangedEvent;
        #endregion
        #endregion Public Evnet
        #region Initial
@@ -110,21 +112,17 @@
            this.chartControl1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.chartControl1_MouseDown);
            this.chartControl1.KeyUp += new System.Windows.Forms.KeyEventHandler(this.chartControl1_KeyUp);
            _diagram = (XYDiagram)chartControl1.Diagram;
            _default_pane=_diagram.DefaultPane;
            _default_pane = _diagram.DefaultPane;
            _axis_x = _diagram.AxisX;
            //_axis_x.SetAxisXQDisplay();
            _axis_y = _diagram.AxisY;
            //_axis_y.SetAxisYQLDisplay();
            _axis_x.Visibility = DefaultBoolean.False;
            _axis_x.GridLines.Visible = false;
            _axis_y.Visibility = DefaultBoolean.False;
            _axis_y.GridLines.Visible = false;
            this.chartControl1.SetChartMonoColorDisplay();
        }
@@ -150,7 +148,7 @@
        /// <summary>
        /// ç»‘定数据
        /// </summary>
        /// </summary>
        public void SetBindingData(List<Yw.Geometry.Point2d> point_pt_list, List<Yw.Geometry.Point2d> line_pt_list, string coordinate = null, Color? color = null)
        {
            _initial_data = false;
@@ -168,16 +166,15 @@
                this.chartControl1.EndInit();
                return;
            }
            AddPointSeries(color.Value, _axis_x, _axis_y, _default_pane, _point_pt_list);
            AddLineSeries(color.Value, _axis_x, _axis_y, _default_pane, _line_pt_list);
            AddLineSeries(color.Value, _axis_x, _axis_y, _default_pane, _line_pt_list);
            if (_coordinate == null)
                SetCoordinate();
            SetChartAxis();
            this.chartControl1.EndInit();
            _initial_data = true;
        }
        //是否是无效数据
@@ -196,7 +193,7 @@
            return false;
        }
        #region Add Chart Data
        #region Add Chart Data
        private void AddPointSeries(Color color, AxisXBase axis_x, AxisYBase axis_y, XYDiagramPaneBase pane, List<Yw.Geometry.Point2d> pt_list)
        {
@@ -220,7 +217,7 @@
                var series_pt = new DevExpress.XtraCharts.SeriesPoint(pt.X, new double[] { pt.Y });
                series_pt_list.Add(series_pt);
            }
            var series = new DevExpress.XtraCharts.Series();
            series.ShowInLegend = false;
            series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Numerical;
@@ -268,11 +265,9 @@
            this.chartControl1.Series.Add(series);
        }
        #endregion
        #endregion Add Chart Data
        #endregion
        #endregion SetBindingData
        #region Set Axis
@@ -302,7 +297,6 @@
            _minY = Math.Min(_line_pt_list.Min(x => x.Y), _minY);
            _maxY = Math.Min(_line_pt_list.Max(x => x.Y), _maxY);
            _coordinate = UniversalCoordinate.CalcCoordinate(_minX, _maxX, _minY, _maxY);
            if (_coordinate == null)
                return;
@@ -310,8 +304,7 @@
            {
                _coordinate.GridNumberX++;
            }
        }
        }
        /// <summary>
        /// è®¾ç½®å›¾è¡¨è½´
@@ -325,7 +318,7 @@
                _axis_y.Visibility = DefaultBoolean.False;
                _axis_y.GridLines.Visible = false;
                return;
            }
            }
            //计算刻度 X
            var axis_x_labels = new List<CustomAxisLabel>();
@@ -340,7 +333,6 @@
            _axis_x.CustomLabels.AddRange(axis_x_labels.ToArray());
            _axis_x.Visibility = DefaultBoolean.True;
            _axis_x.GridLines.Visible = true;
            //计算刻度 Y
            var axis_y_labels = new List<CustomAxisLabel>();
@@ -360,13 +352,12 @@
            _axis_y.SetAxisRange(_coordinate.DispMinY(), _coordinate.DispMaxY());
        }
        #endregion Calc
        #endregion Set Axis
        #region ChartEvent
        private SeriesPoint _pick_point = null;// é€‰ä¸­ç‚¹
        private SeriesPoint _pick_point = null;// é€‰ä¸­ç‚¹
        private void chartControl1_MouseDown(object sender, MouseEventArgs e)
        {
            if (!_initial_data)
@@ -381,7 +372,6 @@
                }
            }
        }
        private void chartControl1_MouseMove(object sender, MouseEventArgs e)
        {
@@ -399,7 +389,6 @@
            _pick_point.NumericalArgument = diagram_coordinates.NumericalArgument;
        }
        private void chartControl1_MouseUp(object sender, MouseEventArgs e)
        {
            if (!_mouse_mode)
@@ -416,7 +405,6 @@
            _pick_point = null;
        }
        private void chartControl1_KeyUp(object sender, KeyEventArgs e)
        {
@@ -448,10 +436,9 @@
            }
            _pick_point.Values[0] = y;
            _pick_point.NumericalArgument = x;
            var index = _pick_point.Tag.is
            SetPointPtValue();
            /*   var index = _pick_point.Tag.is
               SetPointPtValue();*/
        }
        /// <summary>
        /// æ›´æ–°æ•°æ®
@@ -465,8 +452,6 @@
            this.DefinePointChangedEvent?.Invoke(_point_pt_list);
        }
        #endregion
        #endregion ChartEvent
    }
}
WinFrmUI/Yw.WinFrmUI.Phart.Core/02-universal/02-edit/UniversalEditCtrl.cs
@@ -1,7 +1,6 @@
using DevExpress.XtraEditors;
using System.Data;
namespace Yw.WinFrmUI.Phart
{
    public partial class UniversalEditCtrl : DevExpress.XtraEditors.XtraUserControl
@@ -11,14 +10,13 @@
            InitializeComponent();
            this.gridView1.SetNormalEditView();
            this.gridView1.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder;
            this.gridView1.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder;
            this.curveExpressEditChart.DefinePointChangedEvent += FeatCurvesDispCtrl1_OnDefinePointChanged;
        }
        private List<Yw.Geometry.Point2d> _pt_ql_list = null;
        private List<Yw.Geometry.Point2d> _fitCurvePoints = null;
        /// <summary>
        /// åˆå§‹åŒ–数据
        /// </summary>
@@ -30,10 +28,9 @@
            this.bindingSource1.DataSource = _fitCurvePoints;
        }
        /// <summary>
        /// åˆå§‹åŒ–数据(目前没有定义点)
        /// </summary>
        /// </summary>
        public void SetBindingData(Yw.Geometry.CubicSpline2d cubic_spline_ql)
        {
            if (cubic_spline_ql == null)
@@ -45,14 +42,12 @@
            SetBindingData(pt_ql_list, pt_ql_list);
        }
        /// <summary>
        /// åˆå§‹åŒ–数据
        /// </summary>
        /// </summary>
        public void SetBindingData(List<Yw.Geometry.Point2d> pt_ql_list,
                    List<Yw.Geometry.Point2d> def_pt_ql_list)
        {
            _fitCurvePoints = new List<Yw.Geometry.Point2d>();
            this.bindingSource1.DataSource = _fitCurvePoints;
@@ -60,12 +55,10 @@
            if (pt_ql_list == null || pt_ql_list.Count < 4)
            {
                return;
            }
            _pt_ql_list = pt_ql_list;
            this.cmbCurveType.Properties.Items.Clear();
            this.cmbCurveType.Properties.Items.Add("流量水损曲线");
@@ -90,8 +83,6 @@
            this.bindingSource1.ResetBindings(false);
        }
        //单元格修改后触发
        private void gridView1_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
        {
@@ -113,7 +104,6 @@
            }
        }
        /// <summary>
        /// åˆ·æ–°æ•°æ®
        /// </summary>
@@ -124,7 +114,7 @@
                _fitCurvePoints.Add(new Yw.Geometry.Point2d(pt.X, pt.Y));
            var list = _fitCurvePoints?.Select(x => new Yw.Geometry.Point2d(x.X, x.Y)).ToList();
            this.curveExpressEditChart.UpdateCurve(list);
            //this.curveExpressEditChart.UpdateCurve(list);
            this.bindingSource1.ResetBindings(false);
        }
@@ -147,9 +137,8 @@
                points.Add(new Yw.Geometry.Point2d(x, y));
            }
            _pt_ql_list = points;
            this.curveExpressEditChart.UpdateCurve(points);
            //  this.curveExpressEditChart.UpdateCurve(points);
        }
        //插入点
        private void InsertPoint()
@@ -176,7 +165,6 @@
            ReloadCurvePoints();
        }
        /// <summary>
        /// è®¾ç½®æ›²çº¿åæ ‡
        /// </summary>
@@ -184,7 +172,6 @@
        {
            this.curveExpressEditChart.SetChartAxis();
        }
        /// <summary>
        /// èŽ·å–ç‚¹ä¿¡æ¯
@@ -202,7 +189,5 @@
            return true;
        }
    }
}
}