WPF .NET Framework 어플리케이션에서 조회 테이블을 만듭니다.

참고 항목

데이터 집합 및 관련 클래스는 2000년대 초반에 적용된 레거시 .NET Framework 기술로, 응용 프로그램이 데이터베이스에서 연결이 끊어진 동안 응용 프로그램이 메모리의 데이터로 작업할 수 있도록 합니다. 사용자가 데이터를 수정하고 변경 내용을 다시 데이터베이스에 유지할 수 있도록 하는 애플리케이션에 특히 유용합니다. 데이터 세트는 매우 성공적인 기술로 입증되었지만 새 .NET 애플리케이션은 Entity Framework Core를 사용하는 것이 좋습니다. Entity Framework는 표 형식 데이터를 개체 모델로 사용하는 더 자연스러운 방법을 제공하며 더 단순한 프로그래밍 인터페이스를 제공합니다.

조회 테이블이라는 용어(때때로 조회 바인딩이라고도 함)는 다른 테이블의 외래 키 필드 값을 기반으로 한 데이터 테이블에서 정보를 표시하는 컨트롤을 설명합니다. 데이터 원본 창에서 부모 테이블 또는 개체의 주 노드를 관련 자식 테이블의 열 또는 속성에 이미 바인딩된 컨트롤로 끌어 조회 테이블을 만들 수 있습니다.

예를 들어, 판매 데이터베이스의 Orders 테이블을 살펴봅니다. Orders 테이블의 각 레코드에는 주문을 한 고객을 나타내는 CustomerID가 포함되어 있습니다. CustomerIDCustomers 테이블의 고객 레코드를 가리키는 외래 키입니다. Orders 테이블에서 주문 목록을 표시하는 경우 CustomerID 대신 실제 고객 이름을 표시하는 것이 좋습니다. 고객 이름은 Customers 테이블에 있으므로 고객 이름을 표시하는 조회 테이블을 만들어야 합니다. 조회 테이블은 Orders 레코드의 CustomerID 값을 사용하여 관계를 탐색하고 고객 이름을 반환합니다.

조회 테이블을 만들려면

  1. 관련 데이터가 포함된 다음 데이터 원본 중 하나를 프로젝트에 추가합니다.

    참고 항목

    조회 테이블을 만들려면 먼저 두 개의 관련 테이블이 나 개체가 프로젝트의 데이터 원본으로 존재해야 합니다.

  2. WPF Designer를 열고 데이터 원본 창의 항목에 대한 유효한 놓기 대상인 컨테이너가 디자이너에 포함되어 있는지 확인합니다.

    유효한 놓기 대상에 관한 자세한 내용은 Visual Studio에서 데이터에 WPF 컨트롤 바인딩을 참조하세요.

  3. 데이터 메뉴에서 데이터 원본 표시를 클릭하여 데이터 원본 창을 엽니다.

  4. 부모 테이블 또는 개체 및 관련 자식 테이블 또는 개체가 보일 때까지 데이터 원본 창의 노드를 확장합니다.

    참고 항목

    관련 자식 테이블 또는 개체는 부모 테이블 또는 개체 아래에 확장 가능한 자식 노드로 표시되는 노드입니다.

  5. 자식 노드의 드롭다운 목록 메뉴를 클릭하고 세부 정보를 선택합니다.

  6. 자식 노드를 확장합니다.

  7. 자식 노드 아래에서 자식 및 부모 데이터와 관련된 항목의 드롭다운 목록 메뉴를 클릭합니다. (앞의 예에서 이것은 CustomerID 노드입니다.) 조회 바인딩을 지원하는 다음 형식의 컨트롤 중 하나를 선택합니다.

  8. 자식 노드를 데이터 원본 창에서 WPF Designer의 컨테이너로 끌어 놓습니다. (앞의 예에서 자식 노드는 Orders 노드입니다.)

    Visual Studio는 끌어온 항목마다 새로운 데이터 바인딩된 컨트롤을 만드는 XAML을 생성합니다. XAML은 자식 테이블 또는 개체에 대한 새 CollectionViewSource도 놓기 대상의 리소스에 추가합니다. 일부 데이터 원본의 경우 Visual Studio는 테이블 또는 개체에 데이터를 로드하는 코드도 생성합니다. 자세한 내용은 Visual Studio에서 데이터에 WPF 컨트롤 바인딩을 참조하세요.

  9. 데이터 원본 창에서 부모 노드를 이전에 만든 조회 바인딩 컨트롤로 끌어 놓습니다. (앞의 예에서 부모 노드는 Customers 노드입니다.)

    Visual Studio는 컨트롤에서 일부 속성을 설정하여 조회 바인딩을 구성합니다. 다음 표에는 Visual Studio가 수정하는 속성이 나와 있습니다. 필요한 경우 XAML 또는 속성 창에서 이러한 속성을 변경할 수 있습니다.

    속성 설정 설명
    ItemsSource 이 속성은 컨트롤에 표시되는 데이터를 가져오는 데 사용되는 컬렉션 또는 바인딩을 지정합니다. Visual Studio는 컨트롤로 끌어온 부모 데이터의 CollectionViewSource로 이 속성을 설정합니다.
    DisplayMemberPath 이 속성은 컨트롤에 표시되는 데이터 항목의 경로를 지정합니다. Visual Studio는 기본 키 뒤에 문자열 데이터 형식이 있는 부모 데이터의 첫 번째 열 또는 속성으로 이 속성을 설정합니다.

    부모 데이터에 다른 열이나 속성을 표시하려는 경우 이 속성을 다른 속성의 경로로 변경하세요.
    SelectedValue Visual Studio는 디자이너로 끌어온 자식 데이터의 열 또는 속성에 이 속성을 바인딩합니다. 이것은 부모 데이터의 외래 키입니다.
    SelectedValuePath Visual Studio는 부모 데이터의 외래 키인 자식 데이터의 열 또는 속성의 경로로 이 속성을 설정합니다.