CategoryNameCollection Clase

Definición

Representa una colección de cadenas de nombre de categoría.

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
Herencia
CategoryNameCollection

Ejemplos

En el ejemplo de código siguiente se intenta recuperar cuando IToolboxService el control se encuentra en modo de diseño. IToolboxService Si se recupera , el código obtiene los nombres de cada categoría del cuadro de herramientas y dibuja cada nombre en la superficie del 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

Comentarios

Esta colección se usa para almacenar colecciones de nombres de categoría del cuadro de herramientas.

Constructores

Nombre Description
CategoryNameCollection(CategoryNameCollection)

Inicializa una nueva instancia de la CategoryNameCollection clase utilizando la colección especificada.

CategoryNameCollection(String[])

Inicializa una nueva instancia de la CategoryNameCollection clase utilizando la matriz de nombres especificada.

Propiedades

Nombre Description
Count

Obtiene el número de elementos contenidos en la ReadOnlyCollectionBase instancia.

(Heredado de ReadOnlyCollectionBase)
InnerList

Obtiene la lista de elementos contenidos en la ReadOnlyCollectionBase instancia de .

(Heredado de ReadOnlyCollectionBase)
Item[Int32]

Obtiene el nombre de categoría en el índice especificado.

Métodos

Nombre Description
Contains(String)

Indica si la categoría especificada está contenida en la colección.

CopyTo(String[], Int32)

Copia los elementos de colección en la matriz especificada en el índice especificado.

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
GetEnumerator()

Devuelve un enumerador que recorre en iteración la ReadOnlyCollectionBase instancia de .

(Heredado de ReadOnlyCollectionBase)
GetHashCode()

Actúa como función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
IndexOf(String)

Obtiene el índice del valor especificado.

MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

Nombre Description
ICollection.CopyTo(Array, Int32)

Copia todo en ReadOnlyCollectionBase una unidimensional Arraycompatible, empezando por el índice especificado de la matriz de destino.

(Heredado de ReadOnlyCollectionBase)
ICollection.IsSynchronized

Obtiene un valor que indica si el acceso a un ReadOnlyCollectionBase objeto está sincronizado (seguro para subprocesos).

(Heredado de ReadOnlyCollectionBase)
ICollection.SyncRoot

Obtiene un objeto que se puede usar para sincronizar el acceso a un ReadOnlyCollectionBase objeto .

(Heredado de ReadOnlyCollectionBase)

Métodos de extensión

Nombre Description
AsParallel(IEnumerable)

Habilita la paralelización de una consulta.

AsQueryable(IEnumerable)

Convierte un IEnumerable en un IQueryable.

Cast<TResult>(IEnumerable)

Convierte los elementos de un IEnumerable al tipo especificado.

OfType<TResult>(IEnumerable)

Filtra los elementos de un IEnumerable en función de un tipo especificado.

Se aplica a

Consulte también