CategoryNameCollection Classe

Definizione

Rappresenta una raccolta di stringhe di nomi di categoria.

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
Ereditarietà
CategoryNameCollection

Esempio

Nell'esempio di codice seguente viene eseguito un tentativo di recupero IToolboxService quando il controllo viene inserito in modalità progettazione. IToolboxService Se viene recuperato, il codice ottiene i nomi di ogni categoria della casella degli strumenti e disegna ogni nome sulla superficie del controllo.

#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

Commenti

Questa raccolta viene utilizzata per archiviare raccolte di nomi di categoria della casella degli strumenti.

Costruttori

Nome Descrizione
CategoryNameCollection(CategoryNameCollection)

Inizializza una nuova istanza della CategoryNameCollection classe utilizzando la raccolta specificata.

CategoryNameCollection(String[])

Inizializza una nuova istanza della CategoryNameCollection classe utilizzando la matrice di nomi specificata.

Proprietà

Nome Descrizione
Count

Ottiene il numero di elementi contenuti nell'istanza ReadOnlyCollectionBase di .

(Ereditato da ReadOnlyCollectionBase)
InnerList

Ottiene l'elenco di elementi contenuti nell'istanza ReadOnlyCollectionBase di .

(Ereditato da ReadOnlyCollectionBase)
Item[Int32]

Ottiene il nome della categoria in corrispondenza dell'indice specificato.

Metodi

Nome Descrizione
Contains(String)

Indica se la categoria specificata è contenuta nell'insieme.

CopyTo(String[], Int32)

Copia gli elementi della raccolta nella matrice specificata in corrispondenza dell'indice specificato.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetEnumerator()

Restituisce un enumeratore che scorre l'istanza ReadOnlyCollectionBase di .

(Ereditato da ReadOnlyCollectionBase)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
IndexOf(String)

Ottiene l'indice del valore specificato.

MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

Nome Descrizione
ICollection.CopyTo(Array, Int32)

Copia l'intero ReadOnlyCollectionBase oggetto in un oggetto unidimensionale Arraycompatibile, a partire dall'indice specificato della matrice di destinazione.

(Ereditato da ReadOnlyCollectionBase)
ICollection.IsSynchronized

Ottiene un valore che indica se l'accesso a un ReadOnlyCollectionBase oggetto è sincronizzato (thread-safe).

(Ereditato da ReadOnlyCollectionBase)
ICollection.SyncRoot

Ottiene un oggetto che può essere utilizzato per sincronizzare l'accesso a un ReadOnlyCollectionBase oggetto .

(Ereditato da ReadOnlyCollectionBase)

Metodi di estensione

Nome Descrizione
AsParallel(IEnumerable)

Abilita la parallelizzazione di una query.

AsQueryable(IEnumerable)

Converte un IEnumerable in un IQueryable.

Cast<TResult>(IEnumerable)

Esegue il cast degli elementi di un IEnumerable al tipo specificato.

OfType<TResult>(IEnumerable)

Filtra gli elementi di un IEnumerable in base a un tipo specificato.

Si applica a

Vedi anche