カテゴリ名の文字列のコレクションを表します。
この型のすべてのメンバの一覧については、CategoryNameCollection メンバ を参照してください。
System.Object
System.Collections.ReadOnlyCollectionBase
System.Drawing.Design.CategoryNameCollection
NotInheritable Public Class CategoryNameCollection
Inherits ReadOnlyCollectionBase
[C#]
public sealed class CategoryNameCollection : ReadOnlyCollectionBase
[C++]
public __gc __sealed class CategoryNameCollection : public
ReadOnlyCollectionBase
[JScript]
public class CategoryNameCollection extends ReadOnlyCollectionBase
スレッドセーフ
この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。
解説
このコレクションは、ツールボックスのカテゴリ名のコレクションを格納するために使用されます。
使用例
[Visual Basic, C#, C++] 次に示すのは、コントロールがデザイン モードで配置されている場合に IToolboxService を取得するコード例です。このコードは、 IToolboxService が取得されると、そこから各ツールボックス カテゴリの名前を取得し、それぞれの名前をコントロールの表面に描画します。
Imports System
Imports System.Collections
Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Drawing
Imports System.Drawing.Design
Imports System.Data
Imports System.Windows.Forms
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 Not (MyBase.Site Is Nothing) Then
toolboxService = CType(Me.GetService(GetType(IToolboxService)), IToolboxService)
' If an IToolboxService was located, update the category list.
If Not (toolboxService Is 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 Not (categoryNames Is 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
[C#]
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));
}
}
}
}
[C++]
#using <mscorlib.dll>
#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 __gc class ToolboxCategoryNamesControl : public 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 = S"Category Names Display Control";
this->Size = System::Drawing::Size(264, 200);
}
// Obtain or reset IToolboxService* reference on each siting of control.
__property System::ComponentModel::ISite* get_Site() {
return UserControl::get_Site();
}
__property void set_Site(System::ComponentModel::ISite* value) {
UserControl::set_Site( value );
// If the component was sited, attempt to obtain
// an IToolboxService* instance.
if (UserControl::Site != 0) {
toolboxService = dynamic_cast<IToolboxService*>(this->GetService(__typeof(IToolboxService)));
// If an IToolboxService* was located, update the category list.
if (toolboxService != 0)
categoryNames = toolboxService->CategoryNames;
} else toolboxService = 0;
}
protected:
void OnPaint(System::Windows::Forms::PaintEventArgs* e) {
if (categoryNames != 0) {
e->Graphics->DrawString(S"IToolboxService category names list:",
new System::Drawing::Font(S"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->Item[i],
new System::Drawing::Font(S"Arial", 8), Brushes::Black, (float)10, (float)24+(10*i));
}
}
};
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
名前空間: System.Drawing.Design
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
アセンブリ: System.Drawing (System.Drawing.dll 内)
参照
CategoryNameCollection メンバ | System.Drawing.Design 名前空間 | IToolboxService