다음을 통해 공유


WPF .NET Framework 응용 프로그램에서 관련 데이터를 표시합니다.

참고 항목

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

일부 애플리케이션에서는 부모-자식 관계에서 서로 관련된 여러 테이블 또는 엔터티에서 제공되는 데이터를 사용할 수 있습니다. 예를 들어, Customers 테이블의 고객을 표시하는 표를 표시하려고 할 수 있습니다. 사용자가 특정 고객을 선택하면 관련 Orders 테이블에서 해당 고객의 주문이 또 다른 그리드에 표시됩니다.

데이터 소스 창에서 WPF 디자이너로 항목을 끌어와서 관련 데이터를 표시하는 데이터 바인딩 컨트롤을 만들 수 있습니다.

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

  2. 새 데이터 원본 추가를 클릭하고 데이터 원본 구성 마법사 완료합니다.

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

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

  4. 데이터 소스 창에서 관계에서 부모 테이블 또는 개체를 나타내는 노드를 확장합니다. 부모 테이블 또는 개체는 일대다 관계의 “일” 쪽에 있습니다.

  5. 데이터 소스 창에서 디자이너의 유효한 놓기 대상으로 부모 노드(또는 부모 노드의 개별 항목)를 끌어옵니다.

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

  6. 데이터 소스 창에서 관련 자식 테이블 또는 개체를 찾습니다. 관련 자식 테이블과 개체는 부모 노드의 데이터 목록 아래쪽에 확장 가능한 노드로 표시됩니다.

  7. 데이터 소스 창에서 디자이너의 유효한 놓기 대상으로 자식 노드(또는 자식 노드의 개별 항목)를 끌어옵니다.

    Visual Studio는 끌어온 각 항목에 대해 새로운 데이터 바인딩 컨트롤을 만드는 XAML을 생성합니다. XAML은 자식 테이블 또는 개체에 대한 새 CollectionViewSource도 놓기 대상의 리소스에 추가합니다. 이 새로운 CollectionViewSource는 방금 디자이너로 끌어온 부모 테이블 또는 개체의 속성에 바인딩됩니다. 일부 데이터 소스의 경우 Visual Studio는 자식 테이블 또는 개체에 데이터를 로드하는 코드도 생성합니다.

    다음 그림에서는 데이터 소스 창의 데이터 세트에 있는 Customers 테이블의 관련 Orders 테이블을 보여 줍니다.

    Data Sources Window showing relation