Share via


BindingSource 구성 요소 개요

업데이트: 2007년 11월

BindingSource 구성 요소는 내부 데이터 소스에 컨트롤을 바인딩하는 과정을 단순화하도록 디자인되었습니다. BindingSource 구성 요소는 바인딩하는 다른 컨트롤의 데이터 소스 겸 통로 역할을 하며 기본 데이터 목록에 명령을 전달하는 동안 폼의 데이터 연결에 대한 추상화 기능을 제공합니다. 또한 구성 요소 자체가 데이터 소스 기능을 하도록 구성 요소에 데이터를 직접 추가할 수도 있습니다.

중간 매개자인 BindingSource 구성 요소

BindingSource 구성 요소는 폼의 일부 컨트롤이나 모든 컨트롤에 대한 데이터 소스의 역할을 합니다. Visual Studio에서는 속성 창에서 액세스할 수 있는 DataBindings 속성을 통해 BindingSource를 컨트롤에 바인딩할 수 있습니다.

ArrayList와 같은 기본 컬렉션이나 단일 개체 속성과 같은 단순 데이터 소스와 데이터베이스 테이블과 같은 복합 데이터 소스 모두에 BindingSource 구성 요소를 바인딩할 수 있습니다. BindingSource 구성 요소는 바인딩 및 현재 위치 관리 서비스를 제공하는 중간 매개자의 역할을 합니다. 디자인 타임이나 런타임에 DataSourceDataMember 속성을 각각 데이터베이스와 테이블로 설정하여 복합 데이터 소스에 BindingSource 구성 요소를 바인딩할 수 있습니다. 다음 그림에서는 BindingSource 구성 요소가 기존 데이터 바인딩 아키텍처에 잘 맞는 위치를 보여 줍니다.

바인딩 소스 및 데이터 바인딩 아키텍처

참고:

디자인 타임에 데이터베이스 테이블을 데이터 창에서 빈 폼으로 끌어오는 것과 같은 작업을 하면 BindingSource 구성 요소가 만들어지고 내부 데이터 소스에 바인딩되며 데이터 인식 컨트롤이 모두 하나의 작업으로 추가됩니다.

BindingSource 구성 요소를 데이터 소스로

바인딩할 목록을 먼저 지정하지 않고 BindingSource 구성 요소에 항목을 추가하면 이 구성 요소가 목록 스타일 데이터 소스로 사용되고 추가한 항목이 적용됩니다.

또한 AddingNew 이벤트를 통해 사용자 지정 "AddNew" 기능을 제공하는 코드를 작성할 수 있습니다. 이 이벤트는 목록에 항목이 추가되기 전에 AddNew 메서드가 호출되면 발생하는 이벤트입니다. 자세한 내용은 BindingSource 구성 요소 아키텍처를 참조하십시오.

탐색

사용자가 폼에서 데이터를 탐색할 수 있도록 BindingNavigator 구성 요소에서는 BindingSource 구성 요소와 함께 데이터를 탐색하고 조작할 수 있는 기능을 제공합니다. 자세한 내용은 BindingNavigator 컨트롤(Windows Forms)을 참조하십시오.

데이터 조작

BindingSource는 모든 바인딩에 대해 CurrencyManager의 역할을 하므로 데이터 소스에 대한 통화 및 위치 정보에 액세스할 수 있는 기능을 제공합니다. 다음 표에서는 BindingSource 구성 요소가 내부 데이터 조작 및 액세스를 위해 제공하는 멤버를 보여 줍니다.

멤버

설명

Current 속성

데이터 소스의 현재 항목을 가져옵니다.

Position 속성

기본 목록에서 현재 위치를 가져오거나 설정합니다.

List 속성

DataSourceDataMember를 평가한 목록을 가져옵니다. DataMember가 설정되어 있지 않으면 DataSource에서 지정한 목록을 반환합니다.

Insert 메서드

지정한 인덱스에 있는 항목을 목록에 삽입합니다.

RemoveCurrent 메서드

목록에서 현재 항목을 제거합니다.

EndEdit 메서드

내부 데이터 소스에 보류 중인 변경 내용을 적용합니다.

CancelEdit 메서드

현재 편집 작업을 취소합니다.

AddNew 메서드

기본 목록에 새 항목을 추가합니다. 데이터 소스에서 IBindingList를 구현하고 AddingNew 이벤트에서 항목을 반환하면 이 항목을 추가합니다. 그렇지 않으면 목록의 AddNew 메서드에 요청이 전달됩니다. 기본 목록이 IBindingList가 아니면 공용 기본 생성자를 통해 항목이 자동으로 만들어집니다.

정렬 및 필터링

일반적으로 정렬되거나 필터링된 데이터 소스 뷰로 작업해야 합니다. 다음 표에서는 BindingSource 구성 요소 데이터 소스의 멤버를 보여 줍니다.

멤버

설명

Sort 속성

데이터 소스가 IBindingList인 경우, 정렬에 사용되는 열 이름과 정렬 순서 정보를 가져오거나 설정합니다. 데이터 소스가 IBindingListView이고 고급 정렬을 지원하는 경우, 정렬에 사용되는 여러 열 이름과 정렬 순서 정보를 가져옵니다.

Filter 속성

데이터 소스가 IBindingListView인 경우, 표시할 행을 필터링하는 데 사용되는 식을 가져오거나 설정합니다.

참고 항목

개념

BindingSource 구성 요소 아키텍처

참조

BindingSource

BindingNavigator

기타 리소스

BindingSource 구성 요소

BindingNavigator 컨트롤(Windows Forms)

Windows Forms 데이터 바인딩

Windows Forms에 사용할 수 있는 컨트롤