CounterCreationDataCollection.Insert(Int32, CounterCreationData) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Inserts a CounterCreationData object into the collection, at the specified index.
public:
void Insert(int index, System::Diagnostics::CounterCreationData ^ value);
public void Insert (int index, System.Diagnostics.CounterCreationData value);
member this.Insert : int * System.Diagnostics.CounterCreationData -> unit
Public Sub Insert (index As Integer, value As CounterCreationData)
Parameters
- index
- Int32
The zero-based index of the location at which the CounterCreationData is to be inserted.
- value
- CounterCreationData
The CounterCreationData to insert into the collection.
Exceptions
value
is null
.
value
is not a CounterCreationData object.
index
is less than 0.
-or-
index
is greater than the number of items in the collection.
Examples
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" );
}
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 = int.Parse(Console.ReadLine());
CounterCreationData[] myCounterCreationData =
new CounterCreationData[numberOfCounters];
for (int i = 0; i < numberOfCounters; i++)
{
Console.Write("Enter the counter name for {0} counter ", i);
myCounterCreationData[i] = new CounterCreationData();
myCounterCreationData[i].CounterName = Console.ReadLine();
}
CounterCreationDataCollection myCounterCollection =
new CounterCreationDataCollection(myCounterCreationData);
CounterCreationData myInsertCounterCreationData = new 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",
PerformanceCounterCategoryType.SingleInstance, myCounterCollection);
for (int i = 0; i < numberOfCounters; i++)
{
myCounter = new 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");
}
Dim myCategoryName As String
Dim numberOfCounters As Integer
Console.Write("Enter the category Name : ")
myCategoryName = Console.ReadLine()
' Check if the category already exists or not.
If Not PerformanceCounterCategory.Exists(myCategoryName) Then
Console.Write("Enter the number of counters : ")
numberOfCounters = Integer.Parse(Console.ReadLine())
Dim myCounterCreationData(numberOfCounters - 1) As CounterCreationData
Dim i As Integer
For i = 0 To numberOfCounters - 1
Console.Write("Enter the counter name for {0} counter ", i)
myCounterCreationData(i) = New CounterCreationData()
myCounterCreationData(i).CounterName = Console.ReadLine()
Next i
Dim myCounterCollection As New CounterCreationDataCollection(myCounterCreationData)
Dim myInsertCounterCreationData As New 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", _
PerformanceCounterCategoryType.SingleInstance, myCounterCollection)
For i = 0 To numberOfCounters - 1
myCounter = New PerformanceCounter(myCategoryName, _
myCounterCreationData(i).CounterName, "", False)
Next i
Console.WriteLine("The index of '{0}' counter is {1}", _
myInsertCounterCreationData.CounterName, myCounterCollection.IndexOf(myInsertCounterCreationData))
Else
Console.WriteLine("The category already exists")
End If