private void treeInfo_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) { try { var menuItem = e.Node?.Tag as GroupedServerInfo; if (menuItem != null) { ShowDataPane(menuItem.SystemInfo); return; } var simpleNode = e.Node?.Tag as List <SuperSimpleColumnTypes.TwoColumnType>; if (simpleNode != null) { ShowDataPane(simpleNode); return; } var cmdLineNode = e.Node?.Tag as List <CmdLineResult>; if (cmdLineNode != null) { ShowStaticInfo(cmdLineNode); } } catch (Exception ex) { Mbox.Error(ex, $"Failed to load '{e.Node?.Text ?? "Unknown"}'"); } }
private static void ClickExceptionButton(ControlExceptions controlExceptions) { try { Exception exception; Button removeButton; lock (_syncObj) { exception = controlExceptions.Exceptions.Count > 0 ? controlExceptions.Exceptions.Dequeue() : null; if (controlExceptions.Exceptions.Count == 0) { _controlExceptions.Remove(controlExceptions.Control); removeButton = controlExceptions.Button; controlExceptions.Button = null; } else { removeButton = null; } } if (removeButton != null) { try { controlExceptions.Control.OnUiThread(removeButton.Dispose); } catch { } } else { controlExceptions.Control.OnUiThread(() => UpdateButton(controlExceptions)); } if (exception != null) { Mbox.Error(exception, "Sorry! We could not load the data you wanted."); } } catch { } }