! 제품 버전을 정확하게 입력해 주세요.
제품 버전이 정확하게 기재되어 있지 않은 경우,
최신 버전을 기준으로 안내 드리므로
더욱 빠르고 명확한 안내를 위해
제품 버전을 정확하게 입력해 주세요!

.NET Datagrid에서 멀티 레벨 헤더(밴드)를 만드는 방법 > 블로그 & Tips

본문 바로가기

ComponentOne

블로그 & Tips

.NET Datagrid에서 멀티 레벨 헤더(밴드)를 만드는 방법

페이지 정보

작성자 GrapeCity 작성일 2022-03-08 10:58 조회 3,419회 댓글 0건

본문

데이터를 더욱 명확히 제시하기 위해 그리드의 열을 구성할 필요가 종종 있습니다. ComponentOne 2021v3 릴리스에서는 열을 열 밴드라는 논리 그룹으로 구성할 수 있는 FlexGrid 기능을 발표했습니다. 이 기능을 사용하면 새로운 C1FlexGridBandedView 컴포넌트를 사용하여 밴드 그리드 보기를 생성할 수 있습니다.

밴드 그리드 보기를 사용하면 열을 관련 열 밴드에서 관리할 수 있게 함으로써 데이터를 더욱 체계적으로 표시하고 보다 쉽게 이해할 수 있습니다.

자동차와 관련된 데이터를 표시해야 하는 경우를 예로 들겠습니다. 성능, 엔진, 트랜스미션, MPG 및 그룹 관련 열과 같은 밴드를 만들 수 있습니다. 이 블로그에서는 C1FlexGridBandedView 컴포넌트 및 디자인 타임 BandEditor를 사용하여 BandedGridView를 만들고 데이터를 더욱 체계화된 방식으로 표시하는 방법을 보여드립니다.


응용 프로그램 설정


WinForms 응용 프로그램 만들기

아래 단계에 따라 새 프로젝트를 만듭니다.

  1. .NET Framework WinForms 응용 프로그램 만들기

  2. FlexGrid를 도구 상자의 폼에 추가

  3. 데이터 소스를 C1FlexGrid에 추가

flexgrid


C1FlexGridBandedView를 추가하여 FlexGrid에 바인딩

FlexGrid의 열 밴드 기능은 C1.Win.C1FlexGrid.BandedView 어셈블리의 C1.Win.C1FlexGrid 네임스페이스의 C1FlexGridBandedView 클래스를 사용합니다. C1FlexGridBandedView 컴포넌트를 추가하여 FlexGrid에 바인딩하려면 다음 단계를 따르십시오.

  1. NuGet 패키지 관리자를 사용하여 C1.Win.C1FlexGrid.BandedView 패키지를 추가합니다. 그러면 솔루션 탐색기의 종속성 섹션 아래에 NuGet 패키지가 추가됩니다.

  2. 디자인 보기로 전환하면 도구 상자에 C1FlexGridBandedView 컴포넌트가 나타날 것입니다. 이 컴포넌트를 폼 위에 끌어서 놓으면 컴포넌트 트레이에 추가될 것입니다.

  3. C1FlexGridBandedView 컴포넌트를 C1FlexGrid에 바인딩하려면 C1FlexGridBandedView 스마트 태그를 열고 아래 GIF와 같이 FlexGrid 속성을 설정합니다.

flexgrid


밴드 만들기


밴드 편집기 열기

디자인 타임에 밴드를 만들기 위해 밴드 편집기를 사용할 것입니다. 그러면 사용자는 새 밴드를 만들고 디자인 타임에서 이를 사용자 정의할 수 있습니다. 밴드 편집기에는 왼쪽과 오른쪽에 하나씩 두 개의 창이 있습니다.

왼쪽 창에는 밴드 설정 탭과 필드 탭이 있습니다. 밴드 설정 탭을 사용하면 각 밴드에 대한 Caption, ColSpan, RowSpan, Image 및 Visibility와 같은 속성을 사용자 정의할 수 있습니다.

필드 탭에서는 밴드 이름을 선택하거나 선택 취소할 수 있습니다. 오른쪽 창은 도구 모음과 그리드의 두 부분으로 되어 있습니다. 도구 모음은 밴드 추가, 자식 밴드 추가, 부모 밴드 추가, 밴드 제거 등의 밴드 조작 버튼이 모두 위쪽에 표시됩니다.

도구 모음의 바로 아래쪽에는 모든 데이터 열 또는 필드를 포함한 그리드가 있습니다. 모든 변경 사항은 밴드의 추가, 삭제 또는 사용자 정의를 포스팅하며 그리드 영역에 반영됩니다.

밴드 편집기를 열려면 C1FlexGridBandedView 컴포넌트의 작업 메뉴에서 “밴드 편집” 옵션을 클릭합니다.

flexgrid


밴드 레이아웃 만들기

밴드 편집기가 처음 열린 경우에는 각 필드에 해당하는 밴드가 표시됩니다. 모든 열에 대해 레이아웃을 만들 필요는 없습니다. 위의 이미지에 표시된 레이아웃을 만들려면 다음 단계를 따르십시오.

  1. 관련된 열을 그룹화하는 부모 밴드를 만듭니다. MPG와 관련된 열을 그룹화하기 위해 아래 단계를 수행하여 “MPG” 열 밴드를 만들어 보겠습니다.

    • “MPG_City” 밴드를 마우스 오른쪽 버튼으로 클릭합니다.

    • 컨텍스트 메뉴에서 “부모 밴드 추가”를 클릭합니다.

    • BandEditor의 왼쪽 패널에서 속성 그리드를 사용하여 새로 추가된 밴드의 이름을 설정합니다.

    • 밴드의 왼쪽 모서리로 끌거나 “자식 밴드 추가” 옵션을 사용하여 다른 관련 밴드를 추가합니다.

    • 위와 동일한 단계에 따라 성능 및 기본 세부 정보에 해당하는 열 밴드를 그룹 관련 열에 추가합니다.

flexgrid

아래와 같은 레이아웃이 생성됩니다.

표

성능 밴드의 필드는 엔진 및 트랜스미션 관련 필드로 더욱 범주화할 수 있습니다. 따라서 열 밴드의 수준을 하나 더 만들겠습니다. 이 경우에는 엔진 및 트랜스미션 열 밴드입니다.

여러 수준의 밴드를 만들기 위해 아래 단계에 따라 다른 밴드 아래에 열 밴드를 만들겠습니다.

  1. “Performance(성능)” 밴드 아래에 “Engine(엔진)” 밴드를 만듭니다.

  2. 부모 밴드를 “Cyl” 밴드에 추가합니다.

  3. 새로 추가된 밴드의 이름을 엔진으로 설정합니다.

  4. "Liter""HP"와 같은 관련 밴드를 추가합니다.

  5. 마찬가지로 다음 밴드를 만듭니다.

    • "Performance(성능)" 아래에 “Transmission” 밴드("TransmissionSpeedCount""TransmissionAutomatic" 밴드 포함)

    • "Basic Details(기본 세부 정보)" 아래에 “Make” 밴드("Brand""Model" 밴드 포함)

flexgrid

아래와 같은 레이아웃이 만들어집니다.

flexgrid

밴드에 자식 밴드가 있는 경우에는 해당 밴드를 축소 가능하도록 만들 수도 있습니다. 여러 레벨 밴드를 축소 가능하도록 만들려면 CollapseTo 속성을 원하는 열 이름으로 설정하십시오.

  1. 밴드의 축소/확장 상태를 변경할 수 있도록 IsCollapsed 속성을 설정합니다.

  2. 열 밴드를 하나의 열로 축소 가능하도록 만들려면 해당 밴드의 CollapseTo 속성을 설정합니다.

flexgrid

축소 가능한 모든 열을 설정했으면 레이아웃이 완료된 것입니다. 아래와 같은 BandedGridView가 만들어집니다.

표

FlexGrid의 열 밴드에 대해 자세한 정보가 필요하면 문서를 참조하십시오. ColumnBands 샘플을 검사하여 동작 중인 열 밴드를 확인하십시오.




지금 바로 ComponentOne을 다운로드하여 직접 테스트해보세요!

 
  • 페이스북으로 공유
  • 트위터로  공유
  • 링크 복사
  • 카카오톡으로 보내기

댓글목록

등록된 댓글이 없습니다.

메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기

태그1

메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
이메일 : sales-kor@mescius.com | 전화 : 1670-0583 | 경기도 과천시 과천대로 7길 33, 디테크타워 B동 1107호 메시어스(주) 대표자 : 허경명 | 사업자등록번호 : 123-84-00981 | 통신판매업신고번호 : 2013-경기안양-00331 ⓒ 2024 MESCIUS inc. All rights reserved.