diff --git a/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/AttrributesListViewCtrl.cs b/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/AttrributesListViewCtrl.cs index 825016d..4ee2569 100644 --- a/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/AttrributesListViewCtrl.cs +++ b/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/AttrributesListViewCtrl.cs @@ -109,6 +109,13 @@ namespace Opc.Ua.Client.Controls { AttributesLV.Items.Clear(); + + // effettua check preliminarei folder out... + string outPath = Path.Combine(Directory.GetCurrentDirectory(), "trace"); + string expFile = Path.Combine(outPath, $"{nodeId}.txt".Replace("=", "_").Replace(";", "_")); + Directory.CreateDirectory(outPath); + StringBuilder sb = new StringBuilder(); + if (NodeId.IsNull(nodeId)) { return; @@ -177,6 +184,17 @@ namespace Opc.Ua.Client.Controls // display in list. AttributesLV.Items.Add(item); + + // accoda in scrittura + StringBuilder sbr = new StringBuilder(); + foreach (var sItem in item.SubItems) + { + var currItem = sItem.ToString(); + sbr.Append($" | {currItem.Replace("ListViewSubItem: ", "").Replace("{", "").Replace("}", "")}"); + } + // sistemo la riga... + string newRow = $"{sbr}"; + sb.AppendLine(newRow.Substring(3, newRow.Length - 3)); } if (showProperties) @@ -190,15 +208,7 @@ namespace Opc.Ua.Client.Controls AttributesLV.Columns[ii].Width = -2; } - // effettua print proprietà... - string outPath = Path.Combine(Directory.GetCurrentDirectory(), "hist"); - string expFile = Path.Combine(outPath, $"{nodeId}.txt".Replace("=", "_").Replace(";", "_")); - Directory.CreateDirectory(outPath); - StringBuilder sb = new StringBuilder(); - foreach (var item in AttributesLV.Items) - { - sb.AppendLine($"{item}"); - } + // export finale su file proprietà... string nodeData = sb.ToString(); File.WriteAllText(expFile, nodeData); } diff --git a/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/BrowseNodeCtrl.cs b/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/BrowseNodeCtrl.cs index 9ebdc02..23f5f03 100644 --- a/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/BrowseNodeCtrl.cs +++ b/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/BrowseNodeCtrl.cs @@ -180,6 +180,14 @@ namespace Opc.Ua.Client.Controls add { BrowseCTRL.AfterSelect += value; } remove { BrowseCTRL.AfterSelect -= value; } } + + /// + /// effettua espansione di ogni nodo dell'albero + /// + public void expandAll() + { + BrowseCTRL.expandAll(); + } #endregion #region Private Methods diff --git a/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/BrowseTreeViewCtrl.Designer.cs b/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/BrowseTreeViewCtrl.Designer.cs index 9879d0e..2294d54 100644 --- a/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/BrowseTreeViewCtrl.Designer.cs +++ b/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/BrowseTreeViewCtrl.Designer.cs @@ -88,6 +88,7 @@ namespace Opc.Ua.Client.Controls this.BrowseTV.TabIndex = 2; this.BrowseTV.BeforeExpand += new System.Windows.Forms.TreeViewCancelEventHandler(this.BrowseTV_BeforeExpand); this.BrowseTV.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.BrowseTV_AfterSelect); + this.BrowseTV.AfterExpand += new System.Windows.Forms.TreeViewEventHandler(this.BrowseTV_AfterSelect); // // BrowseTreeViewCtrl // diff --git a/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/BrowseTreeViewCtrl.cs b/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/BrowseTreeViewCtrl.cs index 341f2aa..411695f 100644 --- a/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/BrowseTreeViewCtrl.cs +++ b/IOB-OPC-UA/Applications/ClientControls.Net4/Common/Client/BrowseTreeViewCtrl.cs @@ -188,6 +188,12 @@ namespace Opc.Ua.Client.Controls } } + public void expandAll() + { + // parto dal primo nodo... + BrowseTV.SelectedNode.ExpandAll(); + } + /// /// Returns the child node at the specified index. /// diff --git a/IOB-OPC-UA/Applications/ReferenceClient/MainForm.Designer.cs b/IOB-OPC-UA/Applications/ReferenceClient/MainForm.Designer.cs index 036bcf9..3b643be 100644 --- a/IOB-OPC-UA/Applications/ReferenceClient/MainForm.Designer.cs +++ b/IOB-OPC-UA/Applications/ReferenceClient/MainForm.Designer.cs @@ -70,12 +70,13 @@ namespace Quickstarts.ReferenceClient this.HelpMI = new System.Windows.Forms.ToolStripMenuItem(); this.Help_ContentsMI = new System.Windows.Forms.ToolStripMenuItem(); this.StatusBar = new System.Windows.Forms.StatusStrip(); + this.toolStripProgressBar1 = new System.Windows.Forms.ToolStripProgressBar(); + this.tsslAppVers = new System.Windows.Forms.ToolStripStatusLabel(); this.ConnectServerCTRL = new Opc.Ua.Client.Controls.ConnectServerCtrl(); this.BrowseCTRL = new Opc.Ua.Client.Controls.BrowseNodeCtrl(); this.clientHeaderBranding1 = new Opc.Ua.Client.Controls.HeaderBranding(); - this.tsslAppVers = new System.Windows.Forms.ToolStripStatusLabel(); - this.toolStripProgressBar1 = new System.Windows.Forms.ToolStripProgressBar(); this.timerUI = new System.Windows.Forms.Timer(this.components); + this.scanDataToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.MenuBar.SuspendLayout(); this.StatusBar.SuspendLayout(); this.SuspendLayout(); @@ -95,7 +96,8 @@ namespace Quickstarts.ReferenceClient // fileToolStripMenuItem // this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.exitToolStripMenuItem}); + this.exitToolStripMenuItem, + this.scanDataToolStripMenuItem}); this.fileToolStripMenuItem.Name = "fileToolStripMenuItem"; this.fileToolStripMenuItem.Size = new System.Drawing.Size(37, 20); this.fileToolStripMenuItem.Text = "&File"; @@ -103,7 +105,7 @@ namespace Quickstarts.ReferenceClient // exitToolStripMenuItem // this.exitToolStripMenuItem.Name = "exitToolStripMenuItem"; - this.exitToolStripMenuItem.Size = new System.Drawing.Size(93, 22); + this.exitToolStripMenuItem.Size = new System.Drawing.Size(180, 22); this.exitToolStripMenuItem.Text = "E&xit"; this.exitToolStripMenuItem.Click += new System.EventHandler(this.ExitToolStripMenuItem_Click); // @@ -120,21 +122,21 @@ namespace Quickstarts.ReferenceClient // Server_DiscoverMI // this.Server_DiscoverMI.Name = "Server_DiscoverMI"; - this.Server_DiscoverMI.Size = new System.Drawing.Size(133, 22); + this.Server_DiscoverMI.Size = new System.Drawing.Size(180, 22); this.Server_DiscoverMI.Text = "Discover..."; this.Server_DiscoverMI.Click += new System.EventHandler(this.Server_DiscoverMI_Click); // // Server_ConnectMI // this.Server_ConnectMI.Name = "Server_ConnectMI"; - this.Server_ConnectMI.Size = new System.Drawing.Size(133, 22); + this.Server_ConnectMI.Size = new System.Drawing.Size(180, 22); this.Server_ConnectMI.Text = "Connect"; this.Server_ConnectMI.Click += new System.EventHandler(this.Server_ConnectMI_Click); // // Server_DisconnectMI // this.Server_DisconnectMI.Name = "Server_DisconnectMI"; - this.Server_DisconnectMI.Size = new System.Drawing.Size(133, 22); + this.Server_DisconnectMI.Size = new System.Drawing.Size(180, 22); this.Server_DisconnectMI.Text = "Disconnect"; this.Server_DisconnectMI.Click += new System.EventHandler(this.Server_DisconnectMI_Click); // @@ -163,6 +165,17 @@ namespace Quickstarts.ReferenceClient this.StatusBar.Size = new System.Drawing.Size(884, 22); this.StatusBar.TabIndex = 2; // + // toolStripProgressBar1 + // + this.toolStripProgressBar1.Name = "toolStripProgressBar1"; + this.toolStripProgressBar1.Size = new System.Drawing.Size(100, 16); + // + // tsslAppVers + // + this.tsslAppVers.Name = "tsslAppVers"; + this.tsslAppVers.Size = new System.Drawing.Size(12, 17); + this.tsslAppVers.Text = "-"; + // // ConnectServerCTRL // this.ConnectServerCTRL.Configuration = null; @@ -211,16 +224,12 @@ namespace Quickstarts.ReferenceClient this.clientHeaderBranding1.Size = new System.Drawing.Size(884, 75); this.clientHeaderBranding1.TabIndex = 7; // - // tsslAppVers + // scanDataToolStripMenuItem // - this.tsslAppVers.Name = "tsslAppVers"; - this.tsslAppVers.Size = new System.Drawing.Size(12, 17); - this.tsslAppVers.Text = "-"; - // - // toolStripProgressBar1 - // - this.toolStripProgressBar1.Name = "toolStripProgressBar1"; - this.toolStripProgressBar1.Size = new System.Drawing.Size(100, 16); + this.scanDataToolStripMenuItem.Name = "scanDataToolStripMenuItem"; + this.scanDataToolStripMenuItem.Size = new System.Drawing.Size(180, 22); + this.scanDataToolStripMenuItem.Text = "&Scan Data"; + this.scanDataToolStripMenuItem.Click += new System.EventHandler(this.scanDataToolStripMenuItem_Click); // // MainForm // @@ -263,5 +272,6 @@ namespace Quickstarts.ReferenceClient private System.Windows.Forms.ToolStripProgressBar toolStripProgressBar1; private System.Windows.Forms.ToolStripStatusLabel tsslAppVers; private System.Windows.Forms.Timer timerUI; + private System.Windows.Forms.ToolStripMenuItem scanDataToolStripMenuItem; } } diff --git a/IOB-OPC-UA/Applications/ReferenceClient/MainForm.cs b/IOB-OPC-UA/Applications/ReferenceClient/MainForm.cs index 45e1b73..f9b9e13 100644 --- a/IOB-OPC-UA/Applications/ReferenceClient/MainForm.cs +++ b/IOB-OPC-UA/Applications/ReferenceClient/MainForm.cs @@ -222,5 +222,11 @@ namespace Quickstarts.ReferenceClient } #endregion Private Methods + + private void scanDataToolStripMenuItem_Click(object sender, EventArgs e) + { + // effettua selezione di ogni nodo dell'albero x esportare... + BrowseCTRL.expandAll(); + } } }