CategoryNameCollection Class
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.
Represents a collection of category name strings.
public ref class CategoryNameCollection sealed : System::Collections::ReadOnlyCollectionBase
public sealed class CategoryNameCollection : System.Collections.ReadOnlyCollectionBase
type CategoryNameCollection = class
inherit ReadOnlyCollectionBase
Public NotInheritable Class CategoryNameCollection
Inherits ReadOnlyCollectionBase
- Inheritance
Examples
The following code example attempts to retrieve the IToolboxService when the control is sited in design mode. If the IToolboxService is retrieved, the code gets the names of each toolbox category and draws each name on the surface of the control.
#using <System.Windows.Forms.dll>
#using <System.Data.dll>
#using <System.Drawing.dll>
#using <System.dll>
using namespace System;
using namespace System::Collections;
using namespace System::ComponentModel;
using namespace System::ComponentModel::Design;
using namespace System::Drawing;
using namespace System::Drawing::Design;
using namespace System::Data;
using namespace System::Windows::Forms;
namespace ToolboxCategoryNamesControl
{
public ref class ToolboxCategoryNamesControl: public System::Windows::Forms::UserControl
{
private:
System::Drawing::Design::IToolboxService^ toolboxService;
System::Drawing::Design::CategoryNameCollection^ categoryNames;
public:
ToolboxCategoryNamesControl()
{
this->BackColor = System::Drawing::Color::Beige;
this->Name = "Category Names Display Control";
this->Size = System::Drawing::Size( 264, 200 );
}
property System::ComponentModel::ISite^ Site
{
// Obtain or reset IToolboxService^ reference on each siting of control.
virtual System::ComponentModel::ISite^ get() override
{
return __super::Site;
}
virtual void set( System::ComponentModel::ISite^ value ) override
{
__super::Site = value;
// If the component was sited, attempt to obtain
// an IToolboxService^ instance.
if ( __super::Site != nullptr )
{
toolboxService = dynamic_cast<IToolboxService^>(this->GetService( IToolboxService::typeid ));
// If an IToolboxService* was located, update the category list.
if ( toolboxService != nullptr )
categoryNames = toolboxService->CategoryNames;
}
else
toolboxService = nullptr;
}
}
protected:
[System::Security::Permissions::PermissionSetAttribute(System::Security::Permissions::SecurityAction::Demand, Name="FullTrust")]
virtual void OnPaint( System::Windows::Forms::PaintEventArgs^ e ) override
{
if ( categoryNames != nullptr )
{
e->Graphics->DrawString( "IToolboxService category names list:", gcnew System::Drawing::Font( "Arial",9 ), Brushes::Black, 10, 10 );
// categoryNames is a CategoryNameCollection obtained from
// the IToolboxService*. CategoryNameCollection is a read-only
// String* collection.
// Output each category name in the CategoryNameCollection.
for ( int i = 0; i < categoryNames->Count; i++ )
e->Graphics->DrawString( categoryNames[ i ], gcnew System::Drawing::Font( "Arial",8 ), Brushes::Black, (float)10, (float)24 + (10 * i) );
}
}
};
}
using System;
using System.Collections;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing;
using System.Drawing.Design;
using System.Data;
using System.Windows.Forms;
namespace ToolboxCategoryNamesControl
{
public class ToolboxCategoryNamesControl : System.Windows.Forms.UserControl
{
private System.Drawing.Design.IToolboxService toolboxService;
private System.Drawing.Design.CategoryNameCollection categoryNames;
public ToolboxCategoryNamesControl()
{
this.BackColor = System.Drawing.Color.Beige;
this.Name = "Category Names Display Control";
this.Size = new System.Drawing.Size(264, 200);
}
// Obtain or reset IToolboxService reference on each siting of control.
public override System.ComponentModel.ISite Site
{
get
{
return base.Site;
}
set
{
base.Site = value;
// If the component was sited, attempt to obtain
// an IToolboxService instance.
if( base.Site != null )
{
toolboxService = (IToolboxService)this.GetService(typeof(IToolboxService));
// If an IToolboxService was located, update the category list.
if( toolboxService != null )
categoryNames = toolboxService.CategoryNames;
}
else
{
toolboxService = null;
}
}
}
protected override void OnPaint(System.Windows.Forms.PaintEventArgs e)
{
if( categoryNames != null )
{
e.Graphics.DrawString("IToolboxService category names list:", new Font("Arial", 9), Brushes.Black, 10, 10);
// categoryNames is a CategoryNameCollection obtained from
// the IToolboxService. CategoryNameCollection is a read-only
// string collection.
// Output each category name in the CategoryNameCollection.
for( int i=0; i< categoryNames.Count; i++ )
e.Graphics.DrawString(categoryNames[i], new Font("Arial", 8), Brushes.Black, 10, 24+(10*i));
}
}
}
}
Imports System.Collections
Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Drawing
Imports System.Drawing.Design
Imports System.Data
Imports System.Windows.Forms
<System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _
Public Class ToolboxCategoryNamesControl
Inherits System.Windows.Forms.UserControl
Private toolboxService As System.Drawing.Design.IToolboxService
Private categoryNames As System.Drawing.Design.CategoryNameCollection
Public Sub New()
Me.BackColor = System.Drawing.Color.Beige
Me.Name = "Category Names Display Control"
Me.Size = New System.Drawing.Size(264, 200)
End Sub
' Obtain or reset IToolboxService reference on each siting of control.
Public Overrides Property Site() As System.ComponentModel.ISite
Get
Return MyBase.Site
End Get
Set(ByVal Value As System.ComponentModel.ISite)
MyBase.Site = Value
' If the component was sited, attempt to obtain
' an IToolboxService instance.
If (MyBase.Site IsNot Nothing) Then
toolboxService = CType(Me.GetService(GetType(IToolboxService)), IToolboxService)
' If an IToolboxService was located, update the category list.
If (toolboxService IsNot Nothing) Then
categoryNames = toolboxService.CategoryNames
End If
Else
toolboxService = Nothing
End If
End Set
End Property
Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)
If (categoryNames IsNot Nothing) Then
e.Graphics.DrawString("IToolboxService category names list:", New Font("Arial", 9), Brushes.Black, 10, 10)
' categoryNames is a CategoryNameCollection obtained from
' the IToolboxService. CategoryNameCollection is a read-only
' string collection.
' Output each category name in the CategoryNameCollection.
Dim i As Integer
For i = 0 To categoryNames.Count - 1
e.Graphics.DrawString(categoryNames(i), New Font("Arial", 8), Brushes.Black, 10, 24 + 10 * i)
Next i
End If
End Sub
End Class
Remarks
This collection is used to store collections of toolbox category names.
Constructors
CategoryNameCollection(CategoryNameCollection) |
Initializes a new instance of the CategoryNameCollection class using the specified collection. |
CategoryNameCollection(String[]) |
Initializes a new instance of the CategoryNameCollection class using the specified array of names. |
Properties
Count |
Gets the number of elements contained in the ReadOnlyCollectionBase instance. (Inherited from ReadOnlyCollectionBase) |
InnerList |
Gets the list of elements contained in the ReadOnlyCollectionBase instance. (Inherited from ReadOnlyCollectionBase) |
Item[Int32] |
Gets the category name at the specified index. |
Methods
Contains(String) |
Indicates whether the specified category is contained in the collection. |
CopyTo(String[], Int32) |
Copies the collection elements to the specified array at the specified index. |
Equals(Object) |
Determines whether the specified object is equal to the current object. (Inherited from Object) |
GetEnumerator() |
Returns an enumerator that iterates through the ReadOnlyCollectionBase instance. (Inherited from ReadOnlyCollectionBase) |
GetHashCode() |
Serves as the default hash function. (Inherited from Object) |
GetType() |
Gets the Type of the current instance. (Inherited from Object) |
IndexOf(String) |
Gets the index of the specified value. |
MemberwiseClone() |
Creates a shallow copy of the current Object. (Inherited from Object) |
ToString() |
Returns a string that represents the current object. (Inherited from Object) |
Explicit Interface Implementations
ICollection.CopyTo(Array, Int32) |
Copies the entire ReadOnlyCollectionBase to a compatible one-dimensional Array, starting at the specified index of the target array. (Inherited from ReadOnlyCollectionBase) |
ICollection.IsSynchronized |
Gets a value indicating whether access to a ReadOnlyCollectionBase object is synchronized (thread safe). (Inherited from ReadOnlyCollectionBase) |
ICollection.SyncRoot |
Gets an object that can be used to synchronize access to a ReadOnlyCollectionBase object. (Inherited from ReadOnlyCollectionBase) |
Extension Methods
Cast<TResult>(IEnumerable) |
Casts the elements of an IEnumerable to the specified type. |
OfType<TResult>(IEnumerable) |
Filters the elements of an IEnumerable based on a specified type. |
AsParallel(IEnumerable) |
Enables parallelization of a query. |
AsQueryable(IEnumerable) |
Converts an IEnumerable to an IQueryable. |
Applies to
See also
.NET