CounterCreationData.CounterHelp Property

Definition

Gets or sets the custom counter's description.

public:
 property System::String ^ CounterHelp { System::String ^ get(); void set(System::String ^ value); };
public string CounterHelp { get; set; }
member this.CounterHelp : string with get, set
Public Property CounterHelp As String

Property Value

The text that describes the counter's behavior.

Exceptions

The specified value is null.

Examples

The following code example demonstrates how to get and set the CounterHelp property. This example creates two counters and sets their CounterHelp property by using different techniques. When the first counter is initialized, the CounterHelp data is passed to the constructor, whereas the second counter sets the property explicitly.

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;

int main()
{
   CounterCreationDataCollection^ myCol = gcnew CounterCreationDataCollection;
   
   // Create two custom counter objects.
   CounterCreationData^ myCounter1 = gcnew CounterCreationData( "Counter1","First custom counter",PerformanceCounterType::CounterDelta32 );
   CounterCreationData^ myCounter2 = gcnew CounterCreationData;
   
   // Set the properties of the 'CounterCreationData' Object*.
   myCounter2->CounterName = "Counter2";
   myCounter2->CounterHelp = "Second custom counter";
   myCounter2->CounterType = PerformanceCounterType::NumberOfItemsHEX32;
   
   // Add custom counter objects to CounterCreationDataCollection.
   myCol->Add( myCounter1 );
   myCol->Add( myCounter2 );
   if ( PerformanceCounterCategory::Exists( "New Counter Category" ) )
      PerformanceCounterCategory::Delete( "New Counter Category" );
   
   // Bind the counters to a PerformanceCounterCategory.
   PerformanceCounterCategory^ myCategory = PerformanceCounterCategory::Create( "New Counter Category", "Category Help", myCol );
   Console::WriteLine( "Counter Information:" );
   Console::WriteLine( "Category Name: {0}", myCategory->CategoryName );
   for ( int i = 0; i < myCol->Count; i++ )
   {
      // Display the properties of the CounterCreationData objects.
      Console::WriteLine( "CounterName : {0}", myCol[ i ]->CounterName );
      Console::WriteLine( "CounterHelp : {0}", myCol[ i ]->CounterHelp );
      Console::WriteLine( "CounterType : {0}", myCol[ i ]->CounterType );
   }
}
using System;
using System.Diagnostics;

namespace MyDiagnostics
{
    class MyCounterCreationData
    {
        static void Main()
        {
            CounterCreationDataCollection myCol =
                                       new CounterCreationDataCollection();

            // Create two custom counter objects.
            CounterCreationData myCounter1 = new CounterCreationData("Counter1",
               "First custom counter", PerformanceCounterType.CounterDelta32);

            CounterCreationData myCounter2 = new CounterCreationData();

            // Set the properties of the 'CounterCreationData' object.
            myCounter2.CounterName = "Counter2";
            myCounter2.CounterHelp = "Second custom counter";
            myCounter2.CounterType = PerformanceCounterType.NumberOfItemsHEX32;

            // Add custom counter objects to CounterCreationDataCollection.
            myCol.Add(myCounter1);
            myCol.Add(myCounter2);

            if (PerformanceCounterCategory.Exists("New Counter Category"))
                PerformanceCounterCategory.Delete("New Counter Category");

            // Bind the counters to a PerformanceCounterCategory.
            PerformanceCounterCategory myCategory =
                  PerformanceCounterCategory.Create("New Counter Category", "Category Help",
                PerformanceCounterCategoryType.SingleInstance, myCol);

            Console.WriteLine("Counter Information:");
            Console.WriteLine("Category Name: " + myCategory.CategoryName);
            for (int i = 0; i < myCol.Count; i++)
            {
                // Display the properties of the CounterCreationData objects.
                Console.WriteLine("CounterName : " + myCol[i].CounterName);
                Console.WriteLine("CounterHelp : " + myCol[i].CounterHelp);
                Console.WriteLine("CounterType : " + myCol[i].CounterType);
            }
        }
    }
}
Imports System.Diagnostics

Namespace MyDiagnostics

    Class MyCounterCreationData

        Shared Sub Main()
            Dim myCol As New CounterCreationDataCollection()

            ' Create two custom counter objects.
            Dim myCounter1 As New CounterCreationData("Counter1", "First custom counter", _
                                      PerformanceCounterType.CounterDelta32)
            Dim myCounter2 As New CounterCreationData()

            ' Set the properties of the 'CounterCreationData' object.
            myCounter2.CounterName = "Counter2"
            myCounter2.CounterHelp = "Second custom counter"
            myCounter2.CounterType = PerformanceCounterType.NumberOfItemsHEX32

            ' Add custom counter objects to CounterCreationDataCollection.
            myCol.Add(myCounter1)
            myCol.Add(myCounter2)

            If PerformanceCounterCategory.Exists("New Counter Category") Then
                PerformanceCounterCategory.Delete("New Counter Category")
            End If
            ' Bind the counters to a PerformanceCounterCategory.
            Dim myCategory As PerformanceCounterCategory = PerformanceCounterCategory.Create("New " + _
                   "Counter Category", "Category Help", _
                   PerformanceCounterCategoryType.SingleInstance, myCol)

            Console.WriteLine("Counter Information:")
            Console.WriteLine("Category Name: " + myCategory.CategoryName)
            Dim i As Integer
            For i = 0 To myCol.Count - 1
                ' Display the properties of the CounterCreationData objects.
                Console.WriteLine("CounterName : " + myCol(i).CounterName)
                Console.WriteLine("CounterHelp : " + myCol(i).CounterHelp)
                Console.WriteLine("CounterType : " + myCol(i).CounterType.ToString())
            Next i
        End Sub
    End Class
End Namespace 'MyDiagnostics

Applies to

See also