WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/HStation.WinFrmUI.PhartRelation.Core.csproj
@@ -118,6 +118,12 @@ <Compile Update="relation\01-list\PhartDiagramRelationListCtrl.cs"> <SubType>UserControl</SubType> </Compile> <Compile Update="relation\03-grid\01-valve\ValvePhartDiagramRelationGridViewCtrl.cs"> <SubType>UserControl</SubType> </Compile> <Compile Update="relation\04-view\ValvePhartDiagramRelationCurveViewDlg.cs"> <SubType>Form</SubType> </Compile> <Compile Update="SinglePumpAnalyDlg.cs"> <SubType>Form</SubType> </Compile> WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/relation/03-grid/01-valve/ValvePhartDiagramRelationGridViewCtrl.Designer.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,146 @@ namespace HStation.WinFrmUI { partial class ValvePhartDiagramRelationGridViewCtrl { /// <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 Component 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() { components = new System.ComponentModel.Container(); DevExpress.XtraEditors.Controls.EditorButtonImageOptions editorButtonImageOptions1 = new DevExpress.XtraEditors.Controls.EditorButtonImageOptions(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ValvePhartDiagramRelationGridViewCtrl)); 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(); gridControl1 = new DevExpress.XtraGrid.GridControl(); phartDiagramRelationGridItemViewModelBindingSource = new BindingSource(components); gridView1 = new DevExpress.XtraGrid.Views.Grid.GridView(); colName = new DevExpress.XtraGrid.Columns.GridColumn(); colImportance = new DevExpress.XtraGrid.Columns.GridColumn(); colDescription = new DevExpress.XtraGrid.Columns.GridColumn(); colCurve = new DevExpress.XtraGrid.Columns.GridColumn(); repositoryItemButtonEdit1 = new DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit(); ((System.ComponentModel.ISupportInitialize)gridControl1).BeginInit(); ((System.ComponentModel.ISupportInitialize)phartDiagramRelationGridItemViewModelBindingSource).BeginInit(); ((System.ComponentModel.ISupportInitialize)gridView1).BeginInit(); ((System.ComponentModel.ISupportInitialize)repositoryItemButtonEdit1).BeginInit(); SuspendLayout(); // // gridControl1 // gridControl1.DataSource = phartDiagramRelationGridItemViewModelBindingSource; gridControl1.Dock = DockStyle.Fill; gridControl1.Location = new Point(0, 0); gridControl1.MainView = gridView1; gridControl1.Name = "gridControl1"; gridControl1.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] { repositoryItemButtonEdit1 }); gridControl1.Size = new Size(764, 444); gridControl1.TabIndex = 0; gridControl1.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] { gridView1 }); // // phartDiagramRelationGridItemViewModelBindingSource // phartDiagramRelationGridItemViewModelBindingSource.DataSource = typeof(PhartDiagramRelationGridItemViewModel); // // gridView1 // gridView1.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] { colName, colImportance, colDescription, colCurve }); gridView1.GridControl = gridControl1; gridView1.Name = "gridView1"; gridView1.RowCellClick += gridView1_RowCellClick; gridView1.FocusedRowChanged += gridView1_FocusedRowChanged; // // colName // colName.FieldName = "Name"; colName.Name = "colName"; colName.Visible = true; colName.VisibleIndex = 0; // // colImportance // colImportance.FieldName = "Importance"; colImportance.MaxWidth = 100; colImportance.MinWidth = 100; colImportance.Name = "colImportance"; colImportance.Visible = true; colImportance.VisibleIndex = 1; colImportance.Width = 100; // // colDescription // colDescription.FieldName = "Description"; colDescription.Name = "colDescription"; colDescription.Visible = true; colDescription.VisibleIndex = 2; // // colCurve // colCurve.Caption = "æ²çº¿"; colCurve.ColumnEdit = repositoryItemButtonEdit1; colCurve.MaxWidth = 60; colCurve.MinWidth = 60; colCurve.Name = "colCurve"; colCurve.Visible = true; colCurve.VisibleIndex = 3; colCurve.Width = 60; // // repositoryItemButtonEdit1 // repositoryItemButtonEdit1.AutoHeight = false; editorButtonImageOptions1.AllowGlyphSkinning = DevExpress.Utils.DefaultBoolean.True; editorButtonImageOptions1.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("editorButtonImageOptions1.SvgImage"); editorButtonImageOptions1.SvgImageSize = new Size(20, 20); repositoryItemButtonEdit1.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, "", null, null, DevExpress.Utils.ToolTipAnchor.Default) }); repositoryItemButtonEdit1.Name = "repositoryItemButtonEdit1"; repositoryItemButtonEdit1.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.HideTextEditor; // // ValvePhartDiagramRelationGridViewCtrl // AutoScaleDimensions = new SizeF(7F, 14F); AutoScaleMode = AutoScaleMode.Font; Controls.Add(gridControl1); Name = "ValvePhartDiagramRelationGridViewCtrl"; Size = new Size(764, 444); ((System.ComponentModel.ISupportInitialize)gridControl1).EndInit(); ((System.ComponentModel.ISupportInitialize)phartDiagramRelationGridItemViewModelBindingSource).EndInit(); ((System.ComponentModel.ISupportInitialize)gridView1).EndInit(); ((System.ComponentModel.ISupportInitialize)repositoryItemButtonEdit1).EndInit(); ResumeLayout(false); } #endregion private DevExpress.XtraGrid.GridControl gridControl1; private DevExpress.XtraGrid.Views.Grid.GridView gridView1; private BindingSource phartDiagramRelationGridItemViewModelBindingSource; private DevExpress.XtraGrid.Columns.GridColumn colName; private DevExpress.XtraGrid.Columns.GridColumn colImportance; private DevExpress.XtraGrid.Columns.GridColumn colDescription; private DevExpress.XtraGrid.Columns.GridColumn colCurve; private DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit repositoryItemButtonEdit1; } } WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/relation/03-grid/01-valve/ValvePhartDiagramRelationGridViewCtrl.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,84 @@ using HStation.Vmo; using System.Data; using Yw; namespace HStation.WinFrmUI { public partial class ValvePhartDiagramRelationGridViewCtrl : DevExpress.XtraEditors.XtraUserControl { public ValvePhartDiagramRelationGridViewCtrl() { InitializeComponent(); this.gridView1.SetNormalView(); 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, long? curveId) { _objectType = objectType; var allList = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance.GetByObjectTypeAndObjectID(objectType, objectId); SetBindingData(allList, curveId); gridView1_FocusedRowChanged(null, null); } /// <summary> /// ç»å®æ°æ® /// </summary> 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; } } } } //è¡ç¹å»äºä»¶ private void gridView1_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventArgs e) { if (e.Column == this.colCurve) { var row = this.gridView1.GetRow(e.RowHandle) as PhartDiagramRelationGridItemViewModel; if (row == null) { return; } var dlg = new ValvePhartDiagramRelationCurveViewDlg(); dlg.SetBindingData(row.Vmo); 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); } } } } WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/relation/03-grid/01-valve/ValvePhartDiagramRelationGridViewCtrl.resx
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,152 @@ <?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> <metadata name="phartDiagramRelationGridItemViewModelBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>17, 17</value> </metadata> <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 dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAMAEAAAC77u/ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlJlZHtmaWxsOiNEMTFDMUM7fQoJLlll bGxvd3tmaWxsOiNGRkIxMTU7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQoJLnN0MntvcGFjaXR5OjAuMzU7fQoJLnN0M3tv cGFjaXR5OjAuNjU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iU3BsaW5lIj4NCiAgICA8cGF0aCBkPSJNMjks MTZjLTEuNywwLTMsMS4zLTMsM2MwLDAuNywwLjMsMS40LDAuNywxLjljLTEuMiwzLjItMyw1LjEtNC43 LDUuMWMtMi41LDAtNS4yLTQuMS01LjgtMTAuMiAgIGMxLjEtMC41LDEuOC0xLjUsMS44LTIuOGMwLTEu NC0xLTIuNy0yLjQtMi45QzE0LjcsNi41LDEyLjEsNCw5LDRzLTUuNywyLjUtNi42LDYuMUMxLDEwLjMs MCwxMS42LDAsMTNjMCwxLjcsMS4zLDMsMywzczMtMS4zLDMtMyAgIGMwLTEuMi0wLjctMi4xLTEuNi0y LjZDNS4yLDcuOCw3LDYsOSw2czMuOCwxLjgsNC42LDQuNGMtMSwwLjUtMS42LDEuNS0xLjYsMi42YzAs MS40LDAuOSwyLjUsMi4yLDIuOUMxNC45LDIyLjgsMTguMSwyOCwyMiwyOCAgIGMyLjYsMCw1LTIuNCw2 LjQtNi4xYzAuMiwwLDAuNCwwLjEsMC42LDAuMWMxLjcsMCwzLTEuMywzLTNTMzAuNywxNiwyOSwxNnog TTMsMTRjLTAuNiwwLTEtMC40LTEtMWMwLTAuNiwwLjQtMSwxLTFzMSwwLjQsMSwxICAgQzQsMTMuNiwz LjYsMTQsMywxNHogTTE1LDEyYzAuNiwwLDEsMC40LDEsMWMwLDAuNi0wLjQsMS0xLDFzLTEtMC40LTEt MUMxNCwxMi40LDE0LjQsMTIsMTUsMTJ6IE0yOSwyMGMtMC42LDAtMS0wLjQtMS0xICAgYzAtMC42LDAu NC0xLDEtMXMxLDAuNCwxLDFDMzAsMTkuNiwyOS42LDIwLDI5LDIweiIgY2xhc3M9IkJsdWUiIC8+DQog IDwvZz4NCjwvc3ZnPgs= </value> </data> </root> WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/relation/03-grid/PhartDiagramRelationGridViewCtrl.cs
@@ -10,7 +10,7 @@ { InitializeComponent(); this.gridView1.SetNormalView(); this.gridView1.RegistCustomDrawCell(Color.BurlyWood, Color.White); this.gridView1.RegistCustomDrawCell(); } private List<PhartDiagramRelationGridItemViewModel> _allBindingList = null;//ææç»å®å表 WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/relation/04-view/ValvePhartDiagramRelationCurveViewDlg.Designer.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,59 @@ namespace HStation.WinFrmUI { partial class ValvePhartDiagramRelationCurveViewDlg { /// <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() { valveChartViewCtrl1 = new ValveChartViewCtrl(); SuspendLayout(); // // valveChartViewCtrl1 // valveChartViewCtrl1.Dock = DockStyle.Fill; valveChartViewCtrl1.Location = new Point(0, 0); valveChartViewCtrl1.Margin = new Padding(2, 2, 2, 2); valveChartViewCtrl1.Name = "valveChartViewCtrl1"; valveChartViewCtrl1.Size = new Size(962, 561); valveChartViewCtrl1.TabIndex = 0; // // ValvePhartDiagramRelationCurveViewDlg // AutoScaleDimensions = new SizeF(7F, 14F); AutoScaleMode = AutoScaleMode.Font; ClientSize = new Size(962, 561); Controls.Add(valveChartViewCtrl1); Name = "ValvePhartDiagramRelationCurveViewDlg"; StartPosition = FormStartPosition.CenterParent; Text = "æ²çº¿"; ResumeLayout(false); } #endregion private ValveChartViewCtrl valveChartViewCtrl1; } } WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/relation/04-view/ValvePhartDiagramRelationCurveViewDlg.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,31 @@ using HStation.Vmo; using Yw; namespace HStation.WinFrmUI { public partial class ValvePhartDiagramRelationCurveViewDlg : DevExpress.XtraEditors.XtraForm { public ValvePhartDiagramRelationCurveViewDlg() { InitializeComponent(); this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon; } /// <summary> /// ç»å®æ°æ® /// </summary> public async void SetBindingData(PhartDiagramRelationVmo relation) { var vmo = await BLLFactory<Yw.BLL.PhartDiagramExtensions>.Instance.GetByID(relation.DiagramID); SetBindingData(vmo); } /// <summary> /// ç»å®æ°æ® /// </summary> public void SetBindingData(Yw.Vmo.PhartDiagramExGraphListVmo vmo) { this.valveChartViewCtrl1.SetBindingData(vmo); } } } WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/relation/04-view/ValvePhartDiagramRelationCurveViewDlg.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.Xhs.Core/03-simulation/07-matching/03-valve/AssetsValveSingleMatchingCtrl.Designer.cs
@@ -30,7 +30,6 @@ { components = new Container(); layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); phartDiagramRelationGridViewCtrl1 = new PhartDiagramRelationGridViewCtrl(); generalSearchCtrl1 = new GeneralSearchCtrl(); txtDiameterMax = new TextEdit(); txtDiameterMin = new TextEdit(); @@ -57,6 +56,7 @@ layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); simpleLabelItem1 = new DevExpress.XtraLayout.SimpleLabelItem(); layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup(); valvePhartDiagramRelationGridViewCtrl1 = new ValvePhartDiagramRelationGridViewCtrl(); layoutControlItem7 = new DevExpress.XtraLayout.LayoutControlItem(); ((ISupportInitialize)layoutControl1).BeginInit(); layoutControl1.SuspendLayout(); @@ -82,7 +82,7 @@ // // layoutControl1 // layoutControl1.Controls.Add(phartDiagramRelationGridViewCtrl1); layoutControl1.Controls.Add(valvePhartDiagramRelationGridViewCtrl1); layoutControl1.Controls.Add(generalSearchCtrl1); layoutControl1.Controls.Add(txtDiameterMax); layoutControl1.Controls.Add(txtDiameterMin); @@ -97,13 +97,6 @@ layoutControl1.Size = new Size(1028, 569); layoutControl1.TabIndex = 0; layoutControl1.Text = "layoutControl1"; // // phartDiagramRelationGridViewCtrl1 // phartDiagramRelationGridViewCtrl1.Location = new Point(0, 389); phartDiagramRelationGridViewCtrl1.Name = "phartDiagramRelationGridViewCtrl1"; phartDiagramRelationGridViewCtrl1.Size = new Size(1028, 180); phartDiagramRelationGridViewCtrl1.TabIndex = 10; // // generalSearchCtrl1 // @@ -372,16 +365,19 @@ layoutControlGroup2.Spacing = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); layoutControlGroup2.Text = "æ²çº¿å表"; // // valvePhartDiagramRelationGridViewCtrl1 // valvePhartDiagramRelationGridViewCtrl1.Location = new Point(2, 391); valvePhartDiagramRelationGridViewCtrl1.Name = "valvePhartDiagramRelationGridViewCtrl1"; valvePhartDiagramRelationGridViewCtrl1.Size = new Size(1024, 176); valvePhartDiagramRelationGridViewCtrl1.TabIndex = 10; // // layoutControlItem7 // layoutControlItem7.Control = phartDiagramRelationGridViewCtrl1; layoutControlItem7.Control = valvePhartDiagramRelationGridViewCtrl1; layoutControlItem7.Location = new Point(0, 0); layoutControlItem7.MaxSize = new Size(0, 180); layoutControlItem7.MinSize = new Size(5, 180); layoutControlItem7.Name = "layoutControlItem7"; layoutControlItem7.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); layoutControlItem7.Size = new Size(1028, 180); layoutControlItem7.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; layoutControlItem7.TextSize = new Size(0, 0); layoutControlItem7.TextVisible = false; // @@ -442,9 +438,9 @@ private DevExpress.XtraGrid.Columns.GridColumn colDescription; private DevExpress.XtraGrid.Columns.GridColumn colDiameter; private DevExpress.XtraGrid.Columns.GridColumn colMinorLoss; private PhartDiagramRelationGridViewCtrl phartDiagramRelationGridViewCtrl1; private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup2; private DevExpress.XtraLayout.LayoutControlItem layoutControlItem7; private BindingSource assetsValveSingleMatchingViewModelBindingSource; private ValvePhartDiagramRelationGridViewCtrl valvePhartDiagramRelationGridViewCtrl1; private DevExpress.XtraLayout.LayoutControlItem layoutControlItem7; } } WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/03-valve/AssetsValveSingleMatchingCtrl.cs
@@ -12,7 +12,7 @@ this.gridView1.RegistCustomDrawCell(); this.generalSearchCtrl1.SearchEvent += Search; this.generalSearchCtrl1.ClearEvent += Clear; this.phartDiagramRelationGridViewCtrl1.SelectDataEvent += SelectData; this.valvePhartDiagramRelationGridViewCtrl1.SelectDataEvent += SelectData; } public List<AssetsValveSingleMatchingViewModel> _allList = null;//ææå表 @@ -33,7 +33,7 @@ public AssetsValveMainVmo Vmo { get; set; } public string MatchingCurveDbId { get; set; } public List<HydroCurvePointViewModel> MatchingCurveQL { get; set; } public List<HydroFactorCurveViewModel> MatchingCurvesQL { get; set; } public List<HydroCurvePointViewModel> MatchingCurveOL { get; set; } } @@ -137,33 +137,41 @@ } _row = row; _viewModel.Vmo = row.Vmo; this.phartDiagramRelationGridViewCtrl1.SetBindingData(HStation.Assets.DataType.ValveMain, row.Vmo.ID, _curveDbId); this.valvePhartDiagramRelationGridViewCtrl1.SetBindingData(HStation.Assets.DataType.ValveMain, row.Vmo.ID, _curveDbId); } //æ²çº¿æ°æ®å ³èåå private void SelectData(PhartDiagramRelationExtensionsVmo def) { /*if (def != null) if (def != null) { _viewModel.MatchingCurveDbId = def.ID.ToString(); var curve = def.Diagram.GraphList[0].GetFeatPointList(); if (_row.ValveType == HStation.Assets.eValveType.GPV) _viewModel.MatchingCurveOL = new List<HydroCurvePointViewModel>(); _viewModel.MatchingCurvesQL = new List<HydroFactorCurveViewModel>(); for (int i = 0; i < def.Diagram.GraphList.Count; i++) { _viewModel.MatchingCurveQL = new List<HydroCurvePointViewModel>(); foreach (var item in curve) var curve = def.Diagram.GraphList[i].GetFeatPointList(); if (def.Diagram.GraphList[i].GraphType == 11) { _viewModel.MatchingCurveQL.Add(new HydroCurvePointViewModel(item.X, item.Y)); var opening = Yw.WinFrmUI.PhartGraphHelper.GetGraphParas<Yw.WinFrmUI.Phart.QLGraphParasViewModel>((Yw.Ahart.eCurveType)def.Diagram.GraphList[i].GraphType, def.Diagram.GraphList[i].GraphParas); var model = new HydroFactorCurveViewModel(); model.CurveFactor = opening.Opening; model.CurveData = new List<HydroCurvePointViewModel>(); foreach (var item in curve) { model.CurveData.Add(new HydroCurvePointViewModel(item.X, item.Y)); } _viewModel.MatchingCurvesQL.Add(model); } else if (def.Diagram.GraphList[i].GraphType == 12) { foreach (var item in curve) { _viewModel.MatchingCurveOL.Add(new HydroCurvePointViewModel(item.X, item.Y)); } } } else if (_row.ValveType == HStation.Assets.eValveType.TCV) { _viewModel.MatchingCurveOL = new List<HydroCurvePointViewModel>(); foreach (var item in curve) { _viewModel.MatchingCurveOL.Add(new HydroCurvePointViewModel(item.X, item.Y)); } } }*/ } } } } WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/03-valve/AssetsValveSingleMatchingDlg.cs
@@ -1,4 +1,6 @@ namespace HStation.WinFrmUI using Yw.Dto; namespace HStation.WinFrmUI { public partial class AssetsValveSingleMatchingDlg : DevExpress.XtraEditors.XtraForm { @@ -43,6 +45,7 @@ _input.MatchingDiameter = vm.Vmo.Caliber; _input.MatchingMinorLoss = vm.Vmo.MinorLoss; _input.MatchingCurveOL = vm.MatchingCurveOL; _input.MatchingCurvesQL = vm.MatchingCurvesQL; _input.MatchingCurveDbId = vm.MatchingCurveDbId; this.ReloadDataEvent?.Invoke(_input); this.DialogResult = DialogResult.OK;