public void PrintContent() { switch (this.tabControlMain.SelectedTab.Name) { case "tabPageRealtime": { DevGridReport devGridReport = new DevGridReport(this.gridControlRealTime , "打包文件 - [" + this.TabText + "] - " + this.tabControlMain.SelectedTab.Text , "设备类型:" + this.textBoxIEDType.Text + "\t创建时间:" + this.textBoxCreateTime.Text); devGridReport.Preview(); break; } case "tabPageCommonParam": { DevGridReport devGridReport = new DevGridReport(this.gridControlCommonParam , "打包文件 - [" + this.TabText + "] - " + this.tabControlMain.SelectedTab.Text , "设备类型:" + this.textBoxIEDType.Text + "\t创建时间:" + this.textBoxCreateTime.Text); devGridReport.Preview(); break; } case "tabPageAdvancedParam": { DevGridReport devGridReport = new DevGridReport(this.gridControlAdvancedParam , "打包文件 - [" + this.TabText + "] - " + this.tabControlMain.SelectedTab.Text , "设备类型:" + this.textBoxIEDType.Text + "\t创建时间:" + this.textBoxCreateTime.Text); devGridReport.Preview(); break; } case "tabPageMaintenance": { DevGridReport devGridReport = new DevGridReport(this.gridControlMaintenance , "打包文件 - [" + this.TabText + "] - " + this.tabControlMain.SelectedTab.Text , "设备类型:" + this.textBoxIEDType.Text + "\t创建时间:" + this.textBoxCreateTime.Text); devGridReport.Preview(); break; } case "tabPageEvents": { DevGridReport devGridReport = new DevGridReport(((DevExpress.XtraGrid.GridControl)(this.tabControlEvents.SelectedTab.Controls[0])) , "打包文件 - [" + this.TabText + "] - " + this.tabControlEvents.SelectedTab.Text , "设备类型:" + this.textBoxIEDType.Text + "\t创建时间:" + this.textBoxCreateTime.Text); devGridReport.Preview(); break; } case "tabPageOscillo": { TabPage tabPageFile = tabControlOscillo.SelectedTab; OscilloControl oscilloControl = null; foreach (Control control in tabPageFile.Controls) { if (control.GetType().Name == "OscilloControl") { oscilloControl = (OscilloControl)control; break; } } if (oscilloControl == null) { break; } oscilloControl.SetChartPreTitle("打包文件 - [" + this.TabText + "] - ", "设备类型:" + this.textBoxIEDType.Text + " "); oscilloControl.PrintContent(); break; } default: break; } }
private void PackageForm_Load(object sender, EventArgs e) { this.SuspendLayout(); this.TabText = System.IO.Path.GetFileName(FileName); XmlDocument doc = new XmlDocument(); doc.Load(FileName); XmlNode root = doc.SelectSingleNode("Data"); this.textBoxIEDType.Text = root.Attributes["Name"].Value; this.textBoxCreateTime.Text = root.Attributes["CreateTime"].Value; iedFile.ReadXml(System.IO.Path.GetDirectoryName(Application.ExecutablePath) + "\\IED\\" + this.textBoxIEDType.Text + ".xml"); XmlNode DataNode = root.SelectSingleNode("RealTime"); if (DataNode != null) { ((System.ComponentModel.ISupportInitialize)(this.gridControlRealTime)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.gridViewRealTime)).BeginInit(); DataTable varTable = new DataTable(); varTable.Columns.Add(new DataColumn("Message_Name", typeof(string))); varTable.Columns.Add(new DataColumn("Var_Desc", typeof(string))); varTable.Columns.Add(new DataColumn("Var_Value", typeof(string))); int messageIndex = 1; foreach (XmlNode message in DataNode.ChildNodes) { foreach (XmlNode var in message.ChildNodes) { DataRow varRow = varTable.NewRow(); varRow["Message_Name"] = messageIndex.ToString("00") + ". " + message.Attributes["Name"].Value; varRow["Var_Desc"] = var.Attributes["Name"].Value; varRow["Var_Value"] = var.Attributes["Value"].Value + GetVarUnit(message.Attributes["Name"].Value, var.Attributes["Name"].Value); varTable.Rows.Add(varRow); } messageIndex++; } this.gridControlRealTime.DataSource = varTable; this.gridViewRealTime.OptionsBehavior.AutoExpandAllGroups = true; ((System.ComponentModel.ISupportInitialize)(this.gridControlRealTime)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.gridViewRealTime)).EndInit(); } else { tabPageRealtime.Parent = null; } DataNode = root.SelectSingleNode("CommonParam"); if (DataNode != null) { ((System.ComponentModel.ISupportInitialize)(this.gridControlCommonParam)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.gridViewCommonParam)).BeginInit(); DataTable varTable = new DataTable(); varTable.Columns.Add(new DataColumn("Message_Name", typeof(string))); varTable.Columns.Add(new DataColumn("Var_Desc", typeof(string))); varTable.Columns.Add(new DataColumn("Var_Value", typeof(string))); int messageIndex = 1; foreach (XmlNode message in DataNode.ChildNodes) { foreach (XmlNode var in message.ChildNodes) { DataRow varRow = varTable.NewRow(); varRow["Message_Name"] = messageIndex.ToString("00") + ". " + message.Attributes["Name"].Value; varRow["Var_Desc"] = var.Attributes["Name"].Value; varRow["Var_Value"] = var.Attributes["Value"].Value + GetVarUnit(message.Attributes["Name"].Value, var.Attributes["Name"].Value); varTable.Rows.Add(varRow); } messageIndex++; } this.gridControlCommonParam.DataSource = varTable; this.gridViewCommonParam.OptionsBehavior.AutoExpandAllGroups = true; ((System.ComponentModel.ISupportInitialize)(this.gridControlCommonParam)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.gridViewCommonParam)).EndInit(); } else { tabPageCommonParam.Parent = null; } DataNode = root.SelectSingleNode("AdvancedParam"); if (DataNode != null) { ((System.ComponentModel.ISupportInitialize)(this.gridControlAdvancedParam)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.gridViewAdvancedParam)).BeginInit(); DataTable varTable = new DataTable(); varTable.Columns.Add(new DataColumn("Message_Name", typeof(string))); varTable.Columns.Add(new DataColumn("Var_Desc", typeof(string))); varTable.Columns.Add(new DataColumn("Var_Value", typeof(string))); int messageIndex = 1; foreach (XmlNode message in DataNode.ChildNodes) { foreach (XmlNode var in message.ChildNodes) { DataRow varRow = varTable.NewRow(); varRow["Message_Name"] = messageIndex.ToString("00") + ". " + message.Attributes["Name"].Value; varRow["Var_Desc"] = var.Attributes["Name"].Value; varRow["Var_Value"] = var.Attributes["Value"].Value + GetVarUnit(message.Attributes["Name"].Value, var.Attributes["Name"].Value); varTable.Rows.Add(varRow); } messageIndex++; } this.gridControlAdvancedParam.DataSource = varTable; this.gridViewAdvancedParam.OptionsBehavior.AutoExpandAllGroups = true; ((System.ComponentModel.ISupportInitialize)(this.gridControlAdvancedParam)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.gridViewAdvancedParam)).EndInit(); } else { tabPageAdvancedParam.Parent = null; } DataNode = root.SelectSingleNode("Maintenance"); if (DataNode != null) { ((System.ComponentModel.ISupportInitialize)(this.gridControlMaintenance)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.gridViewMaintenance)).BeginInit(); DataTable varTable = new DataTable(); varTable.Columns.Add(new DataColumn("Message_Name", typeof(string))); varTable.Columns.Add(new DataColumn("Var_Desc", typeof(string))); varTable.Columns.Add(new DataColumn("Var_Value", typeof(string))); int messageIndex = 1; foreach (XmlNode message in DataNode.ChildNodes) { foreach (XmlNode var in message.ChildNodes) { DataRow varRow = varTable.NewRow(); varRow["Message_Name"] = messageIndex.ToString("00") + ". " + message.Attributes["Name"].Value; varRow["Var_Desc"] = var.Attributes["Name"].Value; varRow["Var_Value"] = var.Attributes["Value"].Value + GetVarUnit(message.Attributes["Name"].Value, var.Attributes["Name"].Value); varTable.Rows.Add(varRow); } messageIndex++; } this.gridControlMaintenance.DataSource = varTable; this.gridViewMaintenance.OptionsBehavior.AutoExpandAllGroups = true; ((System.ComponentModel.ISupportInitialize)(this.gridControlMaintenance)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.gridViewMaintenance)).EndInit(); } else { tabPageMaintenance.Parent = null; } DataNode = root.SelectSingleNode("Events"); if (DataNode != null) { var digits = new[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' }; String LastType = ""; DevExpress.XtraGrid.GridControl gridControlEvent = null; DataTable varTable = null; foreach (XmlNode message in DataNode.ChildNodes) { String EventType = message.Attributes["Name"].Value; EventType = EventType.TrimEnd(digits); if (LastType != EventType) { TabPage tabPageEvent = new TabPage(); tabPageEvent.Text = EventType; tabControlEvents.Controls.Add(tabPageEvent); gridControlEvent = CreateEventGridControl(); tabPageEvent.Controls.Add(gridControlEvent); varTable = new DataTable(); varTable.Columns.Add(new DataColumn("Message_Name", typeof(string))); varTable.Columns.Add(new DataColumn("Var_Desc", typeof(string))); varTable.Columns.Add(new DataColumn("Var_Value", typeof(string))); gridControlEvent.DataSource = varTable; ((DevExpress.XtraGrid.Views.Grid.GridView)(gridControlEvent.MainView)).OptionsBehavior.AutoExpandAllGroups = true; } LastType = EventType; ((System.ComponentModel.ISupportInitialize)(gridControlEvent)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(gridControlEvent.MainView)).BeginInit(); foreach (XmlNode var in message.ChildNodes) { DataRow varRow = varTable.NewRow(); varRow["Message_Name"] = "记录" + (Convert.ToInt32(message.Attributes["Name"].Value.Replace(EventType, "")) + 1).ToString("00"); varRow["Var_Desc"] = var.Attributes["Name"].Value.TrimEnd(digits); varRow["Var_Value"] = var.Attributes["Value"].Value + GetVarUnit(EventType, var.Attributes["Name"].Value.TrimEnd(digits)); if (EventType == "IO变位记录") { AnalyzeIOChangeEvent(varRow); } varTable.Rows.Add(varRow); } ((System.ComponentModel.ISupportInitialize)(gridControlEvent)).EndInit(); ((System.ComponentModel.ISupportInitialize)(gridControlEvent.MainView)).EndInit(); } } else { tabPageEvents.Parent = null; } DataNode = root.SelectSingleNode("Oscillo"); if (DataNode != null) { int[] FileData = new int[776 * 2 + 4]; foreach (XmlNode file in DataNode.ChildNodes) { String FileName = file.Attributes["Name"].Value; int FileNumber = Convert.ToInt32(FileName.Remove(0, 7)); TabPage tabPageFile = new TabPage(); tabPageFile.Padding = new Padding(8); tabPageFile.BackColor = Color.White; if (FileNumber == 2) { tabPageFile.Text = "起动录波"; } else { tabPageFile.Text = "故障录波" + FileNumber; } tabControlOscillo.SuspendLayout(); tabPageFile.SuspendLayout(); OscilloControl oscilloControl = new OscilloControl(); oscilloControl.Dock = DockStyle.Fill; oscilloControl.LoadOscilloString(file.FirstChild.Value); tabPageFile.Controls.Add(oscilloControl); tabControlOscillo.Controls.Add(tabPageFile); tabPageFile.ResumeLayout(false); tabControlOscillo.ResumeLayout(false); chartList.Add(oscilloControl); } } else { tabPageOscillo.Parent = null; } this.ResumeLayout(false); }