Пример #1
0
        /// <summary>
        /// Fills the items TreeView.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="e">The <see cref="ReportItemsEventArgs"/> instance containing the event data.</param>
        private void FillItemsTreeView(object sender, ReportItemsEventArgs e)
        {
            try
            {
                if (itemsTreeView.Nodes.Count > 0)
                {
                    itemsTreeView.Nodes.Clear();
                }

                foreach (KeyValuePair <string, List <SystemDataItem> > keyValuePair in e.SystemDataCollections)
                {
                    var treeNodes = new List <TreeNode>();

                    keyValuePair.Value?.ForEach(item =>
                                                treeNodes.Add(new TreeNode(
                                                                  $"Name => {item.Name}, Type => {item.Type}, Value(Curr,MinValue,MaxValue) => ({item.Value}, {item.MinValue}, {item.MaxValue})")));

                    var treeNode = new TreeNode(keyValuePair.Key, treeNodes.ToArray());
                    itemsTreeView.Nodes.Add(treeNode);
                    itemsTreeView.ExpandAll();
                }
            }
            catch (Exception err)
            {
                MessageBox.Show($"An error occurred while querying for WMI data: {err.Message}");
            }
        }
Пример #2
0
 /// <summary>
 /// Handles the ReportItemsEventHandler event of the _systemInfo control.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">The <see cref="ReportItemsEventArgs"/> instance containing the event data.</param>
 private void _systemInfo_ReportItemsEventHandler(object sender, ReportItemsEventArgs e)
 {
     if (InvokeRequired)
     {
         Invoke(new Action <object, ReportItemsEventArgs>(FillItemsTreeView), sender, e);
     }
     else
     {
         FillItemsTreeView(sender, e);
     }
 }