다음을 통해 공유


EventDescriptorCollection 클래스

EventDescriptor 개체의 컬렉션을 나타냅니다.

네임스페이스: System.ComponentModel
어셈블리: System(system.dll)

구문

‘선언
<ComVisibleAttribute(True)> _
Public Class EventDescriptorCollection
    Implements IList, ICollection, IEnumerable
‘사용 방법
Dim instance As EventDescriptorCollection
[ComVisibleAttribute(true)] 
public class EventDescriptorCollection : IList, ICollection, IEnumerable
[ComVisibleAttribute(true)] 
public ref class EventDescriptorCollection : IList, ICollection, IEnumerable
/** @attribute ComVisibleAttribute(true) */ 
public class EventDescriptorCollection implements IList, ICollection, 
    IEnumerable
ComVisibleAttribute(true) 
public class EventDescriptorCollection implements IList, ICollection, 
    IEnumerable

설명

EventDescriptorCollection은 읽기 전용이며 이벤트를 추가 또는 제거하는 메서드를 구현하지 않습니다. 이러한 메서드를 구현하려면 이 클래스에서 상속해야 합니다.

EventDescriptorCollection 클래스에 있는 속성을 사용하여 컬렉션의 내용에 대해 쿼리할 수 있습니다. 컬렉션의 요소 개수를 확인하려면 Count 속성을 사용하고, 특정 속성을 인덱스 번호 또는 이름으로 가져오려면 Item 속성을 사용합니다.

또한 Find 메서드를 사용하여 컬렉션에서 지정된 이름의 이벤트 설명을 가져올 수도 있습니다.

참고

이 클래스에 적용되는 HostProtectionAttribute 특성의 Resources 속성 값은 Synchronization입니다. HostProtectionAttribute는 대개 아이콘을 두 번 클릭하거나, 명령을 입력하거나, 브라우저에서 URL을 입력하여 시작되는 데스크톱 응용 프로그램에 영향을 미치지 않습니다. 자세한 내용은 HostProtectionAttribute 클래스나 SQL Server 프로그래밍 및 호스트 보호 특성을 참조하십시오.

예제

다음 코드 예제에서는 단추에 대한 모든 이벤트를 텍스트 상자에 출력합니다. 폼에 button1textBox1이 인스턴스화되어 있어야 합니다.

Private Sub MyEventCollection()
    ' Creates a new collection and assigns it the events for button1.
    Dim events As EventDescriptorCollection = TypeDescriptor.GetEvents(button1)
    
    ' Displays each event in the collection in a text box.
    Dim myEvent As EventDescriptor
    For Each myEvent In  events
        textBox1.Text &= myEvent.Name & ControlChars.Cr
    Next myEvent
End Sub 'MyEventCollection 
private void MyEventCollection() {
    // Creates a new collection and assigns it the events for button1.
    EventDescriptorCollection events = TypeDescriptor.GetEvents(button1);
 
    // Displays each event in the collection in a text box.
    foreach (EventDescriptor myEvent in events)
       textBox1.Text += myEvent.Name + '\n';
 }
private:
   void MyEventCollection()
   {
      // Creates a new collection and assigns it the events for button1.
      EventDescriptorCollection^ events = TypeDescriptor::GetEvents( button1 );
      
      // Displays each event in the collection in a text box.
      for each ( EventDescriptor^ myEvent in events )
      {
         textBox1->Text = String::Concat( textBox1->Text, myEvent->Name, "\n" );
      }
   }
private void MyEventCollection()
{
    // Creates a new collection and assigns it the events for button1.
    EventDescriptorCollection events = TypeDescriptor.GetEvents(button1);

    for (int iCtr = 0; iCtr < events.get_Count(); iCtr++) {
        EventDescriptor myEvent = events.get_Item(iCtr);
        // Displays each event in the collection in a text box.
        textBox1.set_Text(textBox1.get_Text() + myEvent.get_Name() + '\n');
    }
} //MyEventCollection

상속 계층 구조

System.Object
  System.ComponentModel.EventDescriptorCollection

스레드로부터의 안전성

이 형식의 모든 public static(Visual Basic의 경우 Shared) 멤버는 스레드로부터 안전합니다. 인터페이스 멤버는 스레드로부터 안전하지 않습니다.

플랫폼

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

2.0, 1.1, 1.0에서 지원

.NET Compact Framework

2.0, 1.0에서 지원

참고 항목

참조

EventDescriptorCollection 멤버
System.ComponentModel 네임스페이스
EventDescriptor 클래스
TypeDescriptor