정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

ObservableCollection<T> 클래스

2013-12-13

항목이 추가 또는 제거되거나 전체 목록이 새로 고쳐질 때 알림을 제공하는 동적 데이터 컬렉션을 나타냅니다.

Namespace:  System.Collections.ObjectModel
어셈블리:  System(System.dll)

public class ObservableCollection<T> : Collection<T>, 
	INotifyCollectionChanged, INotifyPropertyChanged

형식 매개 변수

T

컬렉션에 있는 항목의 형식입니다.

ObservableCollection<T> 형식에서는 다음과 같은 멤버를 노출합니다.

  이름설명
Public 메서드ObservableCollection<T>()ObservableCollection<T> 클래스의 비어 있는 새 인스턴스를 초기화합니다.
Public 메서드ObservableCollection<T>(IEnumerable<T>)ObservableCollection<T> 클래스의 새 인스턴스를 초기화하고 지정된 컬렉션에서 복사한 항목으로 채웁니다.
Public 메서드ObservableCollection<T>(List<T>)ObservableCollection<T> 클래스의 새 인스턴스를 초기화하고 지정된 목록에서 복사한 항목으로 채웁니다.
맨 위

  이름설명
Public 속성CountCollection<T>에 실제로 포함된 요소의 수를 가져옵니다. (Collection<T>에서 상속됨)
Public 속성Item지정된 인덱스에서 요소를 가져오거나 설정합니다. (Collection<T>에서 상속됨)
Protected 속성ItemsCollection<T>을 둘러싸는 IList<T> 래퍼를 가져옵니다. (Collection<T>에서 상속됨)
맨 위

  이름설명
Public 메서드Add개체를 Collection<T>의 끝 부분에 추가합니다. (Collection<T>에서 상속됨)
Protected 메서드BlockReentrancy이 컬렉션을 변경하려는 재진입 시도를 허용하지 않습니다.
Protected 메서드CheckReentrancy이 컬렉션을 변경하려는 재진입 시도를 확인합니다.
Public 메서드ClearCollection<T>에서 요소를 모두 제거합니다. (Collection<T>에서 상속됨)
Protected 메서드ClearItems컬렉션에서 모든 항목을 제거합니다. (Collection<T>.ClearItems()을(를) 재정의함)
Public 메서드Contains요소가 Collection<T>에 있는지 여부를 확인합니다. (Collection<T>에서 상속됨)
Public 메서드CopyTo대상 배열의 지정된 인덱스에서 시작하여 전체 Collection<T>를 호환되는 1차원 Array에 복사합니다. (Collection<T>에서 상속됨)
Public 메서드Equals(Object)지정한 Object가 현재 Object와 같은지 확인합니다. (Object에서 상속됨)
Protected 메서드Finalize가비지 수집기에서 Object를 회수하기 전에 개체가 리소스를 해제하고 다른 정리 작업을 수행할 수 있게 합니다. (Object에서 상속됨)
Public 메서드GetEnumeratorCollection<T> 전체에 걸쳐 반복하는 열거자를 반환합니다. (Collection<T>에서 상속됨)
Public 메서드GetHashCode특정 형식에 대한 해시 함수 역할을 합니다. (Object에서 상속됨)
Public 메서드GetType현재 인스턴스의 Type을 가져옵니다. (Object에서 상속됨)
Public 메서드IndexOf지정된 개체를 검색하고, 전체 Collection<T>에서 처음으로 검색한 개체의 인덱스(0부터 시작)를 반환합니다. (Collection<T>에서 상속됨)
Public 메서드InsertCollection<T>의 지정된 인덱스에 요소를 삽입합니다. (Collection<T>에서 상속됨)
Protected 메서드InsertItem항목을 컬렉션 내의 지정된 인덱스에 삽입합니다. (Collection<T>.InsertItem(Int32, T)을(를) 재정의함)
Protected 메서드MemberwiseClone현재 Object의 단순 복사본을 만듭니다. (Object에서 상속됨)
Public 메서드Move지정된 인덱스에 있는 항목을 컬렉션에서 새 위치로 이동합니다.
Protected 메서드MoveItem지정된 인덱스에 있는 항목을 컬렉션에서 새 위치로 이동합니다.
Protected 메서드OnCollectionChanged제공된 이벤트 데이터를 사용하여 CollectionChanged 이벤트를 발생시킵니다.
Protected 메서드OnPropertyChanged제공된 인수를 사용하여 PropertyChanged 이벤트를 발생시킵니다.
Public 메서드RemoveCollection<T>에서 맨 처음 발견되는 특정 개체를 제거합니다. (Collection<T>에서 상속됨)
Public 메서드RemoveAtCollection<T>의 지정한 인덱스에서 요소를 제거합니다. (Collection<T>에서 상속됨)
Protected 메서드RemoveItem컬렉션에서 지정된 인덱스의 항목을 제거합니다. (Collection<T>.RemoveItem(Int32)을(를) 재정의함)
Protected 메서드SetItem지정된 인덱스에 있는 항목을 바꿉니다. (Collection<T>.SetItem(Int32, T)을(를) 재정의함)
Public 메서드ToString현재 개체를 나타내는 문자열을 반환합니다. (Object에서 상속됨)
맨 위

  이름설명
Public 이벤트CollectionChanged컬렉션의 항목이 변경되거나 전체 컬렉션이 변경될 때 발생합니다.
Protected 이벤트PropertyChanged컬렉션의 개별 항목에 대한 속성이 변경될 때 발생합니다.
맨 위

  이름설명
명시적 인터페이스 구현Private 메서드ICollection.CopyTo특정 Array 인덱스부터 시작하여 ICollection의 요소를 Array에 복사합니다. (Collection<T>에서 상속됨)
명시적 인터페이스 구현Private 속성ICollection<T>.IsReadOnlyICollection<T>가 읽기 전용인지 여부를 나타내는 값을 가져옵니다. (Collection<T>에서 상속됨)
명시적 인터페이스 구현Private 속성ICollection.IsSynchronizedICollection에 대한 액세스가 동기화되어 스레드로부터 안전하게 보호되는지 여부를 나타내는 값을 가져옵니다. (Collection<T>에서 상속됨)
명시적 인터페이스 구현Private 속성ICollection.SyncRootICollection에 대한 액세스를 동기화하는 데 사용할 수 있는 개체를 가져옵니다. (Collection<T>에서 상속됨)
명시적 인터페이스 구현Private 메서드IEnumerable.GetEnumerator컬렉션 전체에서 반복되는 열거자를 반환합니다. (Collection<T>에서 상속됨)
명시적 인터페이스 구현Private 메서드IList.AddIList에 항목을 추가합니다. (Collection<T>에서 상속됨)
명시적 인터페이스 구현Private 메서드IList.ContainsIList에 특정 값이 포함되어 있는지 여부를 확인합니다. (Collection<T>에서 상속됨)
명시적 인터페이스 구현Private 메서드IList.IndexOfIList에서 특정 항목의 인덱스를 확인합니다. (Collection<T>에서 상속됨)
명시적 인터페이스 구현Private 메서드IList.Insert항목을 IList의 지정한 인덱스에 삽입합니다. (Collection<T>에서 상속됨)
명시적 인터페이스 구현Private 속성IList.IsFixedSizeIList의 크기가 고정되어 있는지 여부를 나타내는 값을 가져옵니다. (Collection<T>에서 상속됨)
명시적 인터페이스 구현Private 속성IList.IsReadOnlyIList가 읽기 전용인지 여부를 나타내는 값을 가져옵니다. (Collection<T>에서 상속됨)
명시적 인터페이스 구현Private 속성IList.Item지정된 인덱스에서 요소를 가져오거나 설정합니다. (Collection<T>에서 상속됨)
명시적 인터페이스 구현Private 메서드IList.RemoveIList에서 맨 처음 발견되는 특정 개체를 제거합니다. (Collection<T>에서 상속됨)
명시적 인터페이스 구현Private 이벤트INotifyPropertyChanged.PropertyChanged속성 값이 변경되면 발생합니다.
맨 위

IEnumerable 인터페이스를 구현하고 XAML의 일회성 데이터 바인딩에 충분한 모든 컬렉션을 열거할 수 있습니다. 그러나 컬렉션에서 삽입이나 삭제를 수행할 때 UI가 자동으로 업데이트되도록 동적 바인딩을 설정하려면 컬렉션에서 INotifyCollectionChanged 인터페이스를 구현해야 합니다. 이 인터페이스는 내부 컬렉션이 변경될 때마다 발생해야 하는 CollectionChanged 이벤트를 노출합니다.

XAML는 INotifyPropertyChanged 인터페이스뿐만 아니라 INotifyCollectionChanged 인터페이스를 구현하는 제공된 기본 클래스 데이터 컬렉션인 ObservableCollection<T> 클래스를 제공합니다. 또한 Collection<T> 클래스에서 파생하여 정의된 예상 컬렉션 지원이 있습니다.

Windows Phone OS

지원되는 버전: 8.0, 7.1, 7.0

Windows Phone

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

표시: