public static HandleException ( string caption, Exception e ) : void | ||
caption | string | |
e | Exception | |
Résultat | void |
private void UpdateBTN_Click(object sender, EventArgs e) { try { WriteValue nodeToWrite = new WriteValue(); nodeToWrite.NodeId = m_variableId; nodeToWrite.AttributeId = Attributes.Value; nodeToWrite.Value = new DataValue(); nodeToWrite.Value.WrappedValue = GetValue(); WriteValueCollection nodesToWrite = new WriteValueCollection(); nodesToWrite.Add(nodeToWrite); // read the attributes. StatusCodeCollection results = null; DiagnosticInfoCollection diagnosticInfos = null; ResponseHeader responseHeader = m_session.Write( null, nodesToWrite, out results, out diagnosticInfos); ClientBase.ValidateResponse(results, nodesToWrite); ClientBase.ValidateDiagnosticInfos(diagnosticInfos, nodesToWrite); // check for error. if (StatusCode.IsBad(results[0])) { throw ServiceResultException.Create(results[0], 0, diagnosticInfos, responseHeader.StringTable); } } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } }
private void ServersLV_SelectedIndexChanged(object sender, EventArgs e) { try { if (ServerCTRL.Session == null) { return; } foreach (ListViewItem item in ServersLV.SelectedItems) { m_application = item.Tag as ApplicationDescription; OkBTN.Enabled = m_application.ApplicationType == ApplicationType.Server || m_application.ApplicationType == ApplicationType.ClientAndServer; return; } m_application = null; OkBTN.Enabled = false; } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } }
private void FilterDV_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { try { if (e.ColumnIndex == 2) { bool state = false; if (m_dataset.Tables[0].DefaultView.Count > 0) { state = (bool)m_dataset.Tables[0].DefaultView[0].Row[3]; } state = !state; foreach (DataRowView row in m_dataset.Tables[0].DefaultView) { FilterDeclarationField field = (FilterDeclarationField)row.Row[0]; row.Row[3] = field.Selected = state; } } } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } }
private void NewMI_Click(object sender, EventArgs e) { try { MonitoredItem monitoredItem = null; foreach (DataGridViewRow row in ResultsDV.SelectedRows) { DataRowView source = row.DataBoundItem as DataRowView; monitoredItem = (MonitoredItem)source.Row[0]; break; } if (monitoredItem == null) { monitoredItem = new MonitoredItem(m_subscription.DefaultItem); } else { monitoredItem = new MonitoredItem(monitoredItem); } if (new EditMonitoredItemDlg().ShowDialog(m_session, monitoredItem, false)) { m_subscription.AddItem(monitoredItem); DataRow row = m_dataset.Tables[0].NewRow(); monitoredItem.Handle = row; UpdateRow(row, monitoredItem); m_dataset.Tables[0].Rows.Add(row); } } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } }
private void DeleteMI_Click(object sender, EventArgs e) { try { if (m_state != DisplayState.EditItems) { return; } foreach (DataGridViewRow row in ItemsDV.SelectedRows) { DataRowView source = row.DataBoundItem as DataRowView; MonitoredItem monitoredItem = (MonitoredItem)source.Row[0]; m_subscription.RemoveItem(monitoredItem); source.Row.Delete(); } m_dataset.AcceptChanges(); } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } }
private void ViewValueMI_Click(object sender, EventArgs e) { try { MonitoredItem monitoredItem = null; DataValue value = null; foreach (DataGridViewRow row in ResultsDV.SelectedRows) { DataRowView source = row.DataBoundItem as DataRowView; monitoredItem = (MonitoredItem)source.Row[0]; value = (DataValue)source.Row[11]; break; } if (monitoredItem == null) { return; } m_EditComplexValueDlg = new EditComplexValueDlg(); m_EditComplexValueDlg.Tag = monitoredItem; m_EditComplexValueDlg.ShowDialog( m_session, monitoredItem.ResolvedNodeId, monitoredItem.AttributeId, null, value.Value, true, "View Data Change"); m_EditComplexValueDlg = null; } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } }
private void OkBTN_Click(object sender, EventArgs e) { try { IndexRangeTB.Text = IndexRangeTB.Text.Trim(); if (String.IsNullOrEmpty(IndexRangeTB.Text)) { NumericRange.Parse(IndexRangeTB.Text); } StatusCodeTB.Text = StatusCodeTB.Text.Trim(); if (StatusCodeCK.Checked) { TypeInfo.Cast(StatusCodeTB.Text, BuiltInType.StatusCode); } SourceTimestampTB.Text = SourceTimestampTB.Text.Trim(); if (SourceTimestampCK.Checked) { TypeInfo.Cast(SourceTimestampTB.Text, BuiltInType.DateTime); } ServerTimestampTB.Text = ServerTimestampTB.Text.Trim(); if (ServerTimestampCK.Checked) { TypeInfo.Cast(ServerTimestampTB.Text, BuiltInType.DateTime); } DialogResult = DialogResult.OK; } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } }
/// <summary> /// Shows the dialog. /// </summary> public ApplicationDescription ShowDialog(ApplicationConfiguration configuration, bool showSearchPanel) { List <string> urls = new List <string>(); foreach (EndpointDescription endpoint in configuration.ClientConfiguration.DiscoveryServers) { urls.Add(endpoint.EndpointUrl); } if (urls.Count == 0) { urls.Add("opc.tcp://localhost:48041/GdsServer"); } ServerCTRL.Configuration = configuration; ServerCTRL.SetAvailableUrls(urls); try { ServerCTRL.Connect(); } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } OkBTN.Visible = true; CancelBTN.Visible = true; BrowseCK.Checked = showSearchPanel; BrowseCK.Checked = !showSearchPanel; if (base.ShowDialog() != DialogResult.OK) { return(null); } return(m_application); }
/// <summary> /// Handles the BeforeExpand event of the BrowseTV control. /// </summary> private void BrowseTV_BeforeExpand(object sender, TreeViewCancelEventArgs e) { try { ReferenceDescription reference = (ReferenceDescription)e.Node.Tag; e.Node.Nodes.Clear(); // build list of references to browse. BrowseDescriptionCollection nodesToBrowse = new BrowseDescriptionCollection(); for (int ii = 0; ii < m_referenceTypeIds.Length; ii++) { BrowseDescription nodeToBrowse = new BrowseDescription(); nodeToBrowse.NodeId = m_rootId; nodeToBrowse.BrowseDirection = BrowseDirection.Forward; nodeToBrowse.ReferenceTypeId = m_referenceTypeIds[ii]; nodeToBrowse.IncludeSubtypes = true; nodeToBrowse.NodeClassMask = 0; nodeToBrowse.ResultMask = (uint)BrowseResultMask.All; if (reference != null) { nodeToBrowse.NodeId = (NodeId)reference.NodeId; } nodesToBrowse.Add(nodeToBrowse); } // add the childen to the control. SortedDictionary <ExpandedNodeId, TreeNode> dictionary = new SortedDictionary <ExpandedNodeId, TreeNode>(); ReferenceDescriptionCollection references = ClientUtils.Browse(m_session, View, nodesToBrowse, false); for (int ii = 0; references != null && ii < references.Count; ii++) { reference = references[ii]; // ignore out of server references. if (reference.NodeId.IsAbsolute) { continue; } if (dictionary.ContainsKey(reference.NodeId)) { continue; } TreeNode child = new TreeNode(reference.ToString()); child.Nodes.Add(new TreeNode()); child.Tag = reference; if (!reference.TypeDefinition.IsAbsolute) { try { if (!m_typeImageMapping.ContainsKey((NodeId)reference.TypeDefinition)) { List <NodeId> nodeIds = ClientUtils.TranslateBrowsePaths(m_session, (NodeId)reference.TypeDefinition, m_session.NamespaceUris, Opc.Ua.BrowseNames.Icon); if (nodeIds.Count > 0 && nodeIds[0] != null) { DataValue value = m_session.ReadValue(nodeIds[0]); byte[] bytes = value.Value as byte[]; if (bytes != null) { System.IO.MemoryStream istrm = new System.IO.MemoryStream(bytes); Image icon = Image.FromStream(istrm); BrowseTV.ImageList.Images.Add(icon); m_typeImageMapping[(NodeId)reference.TypeDefinition] = BrowseTV.ImageList.Images.Count - 1; } } } } catch (Exception exception) { Utils.Trace(exception, "Error loading image."); } } int index = 0; if (!m_typeImageMapping.TryGetValue((NodeId)reference.TypeDefinition, out index)) { child.ImageIndex = ClientUtils.GetImageIndex(m_session, reference.NodeClass, reference.TypeDefinition, false); child.SelectedImageIndex = ClientUtils.GetImageIndex(m_session, reference.NodeClass, reference.TypeDefinition, true); } else { child.ImageIndex = index; child.SelectedImageIndex = index; } dictionary[reference.NodeId] = child; } // add nodes to tree. foreach (TreeNode node in dictionary.Values.OrderBy(i => i.Text)) { e.Node.Nodes.Add(node); } } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } }
private void ReadTypeCB_SelectedIndexChanged(object sender, EventArgs e) { try { HistoryOperation operation = (HistoryOperation)ReadTypeCB.SelectedItem; switch (operation) { case HistoryOperation.Read: { StartTimeLB.Visible = true; StartTimeDP.Visible = true; StartTimeCK.Visible = true; StartTimeCK.Enabled = true; StartTimeCK.Checked = true; EndTimeLB.Visible = true; EndTimeDP.Visible = true; EndTimeCK.Visible = true; EndTimeCK.Enabled = true; TimeStepLB.Visible = false; TimeStepNP.Visible = false; TimeStepUnitsLB.Visible = false; TimeShiftBTN.Visible = false; break; } case HistoryOperation.Update: { StartTimeLB.Visible = true; StartTimeDP.Visible = true; StartTimeCK.Visible = true; StartTimeCK.Enabled = true; StartTimeCK.Checked = true; EndTimeLB.Visible = true; EndTimeDP.Visible = true; EndTimeCK.Visible = true; EndTimeCK.Enabled = true; TimeStepLB.Visible = false; TimeStepNP.Visible = false; TimeStepUnitsLB.Visible = false; TimeShiftBTN.Visible = false; break; } case HistoryOperation.Delete: { StartTimeLB.Visible = true; StartTimeDP.Visible = true; StartTimeCK.Visible = true; StartTimeCK.Enabled = false; StartTimeCK.Checked = true; EndTimeLB.Visible = true; EndTimeDP.Visible = true; EndTimeCK.Visible = true; EndTimeCK.Enabled = false; EndTimeCK.Checked = true; TimeStepLB.Visible = false; TimeStepNP.Visible = false; TimeStepUnitsLB.Visible = false; TimeShiftBTN.Visible = false; break; } } } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } }
private void FilterDV_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { try { if (e.RowIndex == -1) { return; } DataRowView source = FilterDV.Rows[e.RowIndex].DataBoundItem as DataRowView; FilterDeclarationField field = (FilterDeclarationField)source.Row[0]; if (e.ColumnIndex == 5) { FilterOperator filterOperator = field.FilterOperator; if (new SetFilterOperatorDlg().ShowDialog(ref filterOperator)) { field.FilterEnabled = true; source.Row[5] = field.FilterEnabled; field.FilterOperator = filterOperator; source.Row[6] = field.FilterOperator; } return; } if (e.ColumnIndex == 6) { if (field.FilterOperator == FilterOperator.IsNull) { field.FilterValue = Variant.Null; return; } InstanceDeclaration declaration = field.InstanceDeclaration; object result = new EditComplexValueDlg().ShowDialog( m_session, declaration.DisplayName, declaration.DataType, declaration.ValueRank, field.FilterValue.Value, "Edit Filter Value"); if (result != null) { field.FilterEnabled = true; source.Row[5] = field.FilterEnabled; source.Row[6] = field.FilterOperator; field.FilterValue = new Variant(result); source.Row[7] = field.FilterValue; } return; } } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } }
/// <summary> /// Updates the display with a new value for a monitored variable. /// </summary> private void MonitoredItem_Notification(MonitoredItem monitoredItem, MonitoredItemNotificationEventArgs e) { if (this.InvokeRequired) { this.BeginInvoke(new MonitoredItemNotificationEventHandler(MonitoredItem_Notification), monitoredItem, e); return; } try { // check for valid notification. EventFieldList notification = e.NotificationValue as EventFieldList; if (notification == null) { return; } // check if monitored item has changed. if (!Object.ReferenceEquals(m_monitoredItem, monitoredItem)) { return; } // check if the filter has changed. if (notification.EventFields.Count != m_filter.Fields.Count + 1) { return; } if (m_displayConditions) { NodeId eventTypeId = m_filter.GetValue <NodeId>(Opc.Ua.BrowseNames.EventType, notification.EventFields, null); if (eventTypeId == Opc.Ua.ObjectTypeIds.RefreshStartEventType) { EventsLV.Items.Clear(); } if (eventTypeId == Opc.Ua.ObjectTypeIds.RefreshEndEventType) { return; } } // create an item and add to top of list. ListViewItem item = CreateListItem(m_filter, notification.EventFields); if (item.ListView == null) { EventsLV.Items.Insert(0, item); } // adjust the width of the columns. for (int ii = 0; ii < EventsLV.Columns.Count; ii++) { EventsLV.Columns[ii].Width = -2; } } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } }
private void TimeShiftBTN_Click(object sender, EventArgs e) { try { } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } }
private void StartTimeDP_ValueChanged(object sender, EventArgs e) { try { } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } }