Windows apps
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

CounterCreationDataCollection::Insert Method (Int32, CounterCreationData^)

 

Inserts a CounterCreationData object into the collection, at the specified index.

Namespace:   System.Diagnostics
Assembly:  System (in System.dll)

public:
void Insert(
	int index,
	CounterCreationData^ value
)

Parameters

index
Type: System::Int32

The zero-based index of the location at which the CounterCreationData is to be inserted.

value
Type: System.Diagnostics::CounterCreationData^

The CounterCreationData to insert into the collection.

Exception Condition
ArgumentNullException

value is null.

ArgumentException

value is not a CounterCreationData object.

ArgumentOutOfRangeException

index is less than 0.

-or-

index is greater than the number of items in the collection.

The following example demonstrates how to use the Insert method to insert a CounterCreationData object into a CounterCreationDataCollection.

String^ myCategoryName;
int numberOfCounters;
Console::Write( "Enter the category Name : " );
myCategoryName = Console::ReadLine();
// Check if the category already exists or not.
if (  !PerformanceCounterCategory::Exists( myCategoryName ) )
{
   Console::Write( "Enter the number of counters : " );
   numberOfCounters = Int32::Parse( Console::ReadLine() );
   array<CounterCreationData^>^ myCounterCreationData =
      gcnew array<CounterCreationData^>(numberOfCounters);

   for ( int i = 0; i < numberOfCounters; i++ )
   {
      Console::Write( "Enter the counter name for {0} counter ", i );
      myCounterCreationData[ i ] = gcnew CounterCreationData;
      myCounterCreationData[ i ]->CounterName = Console::ReadLine();
   }
   CounterCreationDataCollection^ myCounterCollection =
      gcnew CounterCreationDataCollection( myCounterCreationData );
   CounterCreationData^ myInsertCounterCreationData = gcnew CounterCreationData(
      "CounterInsert","",PerformanceCounterType::NumberOfItems32 );
   // Insert an instance of 'CounterCreationData' in the 'CounterCreationDataCollection'.
   myCounterCollection->Insert( myCounterCollection->Count - 1,
      myInsertCounterCreationData );
   Console::WriteLine( "'{0}' counter is inserted into 'CounterCreationDataCollection'",
      myInsertCounterCreationData->CounterName );
   // Create the category.
   PerformanceCounterCategory::Create( myCategoryName, "Sample Category",
      myCounterCollection );

   for ( int i = 0; i < numberOfCounters; i++ )
   {
      myCounter = gcnew PerformanceCounter( myCategoryName,
         myCounterCreationData[ i ]->CounterName, "", false );
   }
   Console::WriteLine( "The index of '{0}' counter is {1}",
      myInsertCounterCreationData->CounterName, myCounterCollection->IndexOf( myInsertCounterCreationData ) );
}
else
{
   Console::WriteLine( "The category already exists" );
}

.NET Framework
Available since 1.1
Return to top
Show:
© 2017 Microsoft