다음을 통해 공유


ComboBox 데이터 바인딩 샘플

업데이트: 2007년 11월

이 샘플에서는 데이터를 ComboBoxDataGridView 컨트롤에 바인딩하는 방법을 보여 줍니다.

설치 샘플 및 지침을 얻으려면

  • 다음 중 하나 이상을 수행합니다.

    • 도움말 메뉴에서 샘플을 클릭합니다.

      추가 정보 파일에서 샘플에 대한 정보를 확인합니다.

    • Visual Studio 2008 Samples 웹 사이트를 방문합니다. 이 웹 사이트에서 최신 버전의 샘플을 얻을 수 있습니다.

    • Visual Studio가 설치되어 있는 컴퓨터에서 샘플을 찾습니다. 기본적으로 샘플과 추가 정보 파일은 drive:\Program Files\Microsoft Visual Studio 9.0\Samples\lcid에 설치되어 있습니다. Visual Studio Express Editions의 경우에는 모든 샘플이 온라인에 있습니다.

자세한 내용은 샘플 파일 찾기를 참조하십시오.

보안 정보:

이 샘플 코드는 개념을 설명하기 위한 것으로 개념과 관련된 코드만을 보여 줍니다. 특정 환경에 대한 보안 요구 사항을 충족하지 못 할 수 있고 표시된 그대로 사용하면 안됩니다. 안전하고 강력한 프로젝트를 만들려면 보안 및 오류 처리 코드를 추가하는 것이 좋습니다. Microsoft에서는 어떠한 보증도 없이 “있는 그대로” 이 샘플 코드를 제공합니다.

이 샘플을 실행하려면

  • F5 키를 누릅니다.

요구 사항

이 샘플에는 Northwind 샘플 데이터베이스가 필요합니다. 자세한 내용은 방법: 샘플용 데이터베이스 구성 요소 설치 및 문제 해결을 참조하십시오.

세부 항목

코드에서는 서로 다른 6개 형식의 데이터 소스를 ComboBox 컨트롤에 바인딩하는 방법을 보여 줍니다. 다음의 데이터가 바인딩됩니다.

기본 폼이 로드될 때 간단한 SQL Select 문을 사용하여 Northwind 데이터베이스의 Products 테이블이 DataSet에 로드됩니다. 이때 ProductName 열의 정렬된 뷰를 제공하는 DataView도 만들어집니다. 또한 Products 테이블은 TableAdapter와 BindingSource를 사용하여 다른 DataSet에 로드됩니다.

그러면 사용자는 다른 색의 배열, 모양 배열 목록, 구조체로 정의된 판매 부서가 포함된 고급 배열 목록, 데이터 집합 또는 정렬된 데이터 뷰에 있는 제품 테이블로 바인딩하여 콤보 상자 컨트롤을 채울 수 있습니다. 사용자가 데이터 집합, 데이터 뷰 또는 판매 부서의 고급 배열 목록에 바인딩하는 경우 콤보 상자에서 항목을 선택하면 해당 항목의 연관된 값도 표시됩니다. 사용자가 데이터 커넥터에 바인딩하는 경우 콤보 상자와 DataGridView가 동기화됩니다. 콤보 상자의 값을 변경하면 Datagridview가 같은 레코드로 이동합니다. 표의 데이터 집합을 스크롤하거나 탐색 도구 모음을 사용하면 콤보 상자가 업데이트됩니다.

기본 폼에는 콤보 상자 컨트롤, 데이터를 로드할 단추 컨트롤, 데이터 소스와 선택된 값을 표시할 두 개의 레이블 컨트롤과 표가 포함됩니다. ArrayList, DataSetDataView를 사용하여 콤보 상자 컨트롤에 표시되는 각 항목에 값을 연결할 수 있습니다. 예를 들어, 사용자가 콤보 상자에 바인딩된 제품 테이블에서 제품 항목 Chai를 선택하면 Chai가 선택된 항목으로 표시되지만, SelectedValue 속성을 통해 이 항목과 연관된 ProductId를 사용할 수도 있습니다. ValueMember 속성을 사용하면 연관된 값이 포함된 항목을 선택할 수 있습니다. DisplayMember 속성을 사용하면 콤보 상자 컨트롤에 표시되는 항목을 선택할 수 있습니다.

이 샘플 만들기

이 폼의 대부분은 구성 요소를 폼으로 끌어 온 다음 스마트 태그와 속성 창의 설정을 사용하여 만들었습니다. 다음은 폼의 DataGridView 부분을 처음부터 만드는 방법을 간단히 요약한 것입니다.

  1. Windows 응용 프로그램 프로젝트를 새로 만듭니다.

  2. Form1이 열린 상태에서 데이터 소스 창을 선택합니다. 데이터 메뉴를 통해 활성화할 수도 있습니다.

  3. 데이터 소스 창에서 새 데이터 소스 추가를 클릭합니다.

  4. 데이터 소스 구성 마법사에서 데이터 소스 종류로 데이터베이스를 선택합니다.

  5. 데이터 연결로는 Northwind가 있는 서버를 선택합니다.

  6. 다음 단계를 통해 연결 문자열을 강력한 형식의 응용 프로그램 설정 파일에 저장할 수 있습니다.

    1. 데이터베이스 개체 선택에서 Products 테이블을 선택합니다.

    2. 마침을 클릭하여 Northwind 데이터베이스에 대해 형식화된 데이터 집합을 만듭니다. 데이터 소스 창에서 결과를 볼 수 있습니다.

  7. 데이터 소스 창에서 Products 테이블을 Form1로 끌어 옵니다.

  8. 그러면 데이터 바인딩된 DataGridView와 폼 디자이너 화면에 추가된 BindingNavigator 컨트롤을 볼 수 있습니다. 또한 구성 요소 트레이에 NorthwindDataSet, ProductsTableAdapter 및 ProductsBindingSource가 추가된 것을 볼 수 있습니다.

폼 내에서 데이터 로드

이 예제에서는 사용자가 제공하는 매개 변수 없이 데이터가 있는 폼을 로드합니다. 데이터 집합 디자이너를 사용하면 재사용 가능한 DataAdapter를 사용하여 dsProducts2를 채울 수 있습니다.

데이터 소스 창에서 Employees 테이블을 끌면 Visual Studio에서 TableAdapter에 대한 기본 쿼리를 호출하기 위한 코드가 자동으로 Form.Load 이벤트에 추가됩니다. 이 예제에서는 이 코드가 btnDC Click 메서드로 이동되었습니다.

' Fill the Lookup Tables
Me.ProductsTableAdapter.Fill(Me.NorthwindDataSet.Products)

참고 항목

작업

방법: 샘플용 데이터베이스 구성 요소 설치 및 문제 해결

방법: 데이터에 Windows Forms ComboBox 또는 ListBox 컨트롤 바인딩

개념

Windows Forms에서 지원하는 데이터 소스

참조

ComboBox

DataSource

ArrayList

DataTable

DataView