본문 바로가기
C#/DevExpress

DevExpress - Grid Column Size 조절

by 샤나엘 2020. 10. 14.
반응형

안녕하세요.

오늘은 Grid에서 창크기에 맞게 컬럼사이즈가 조절되지 않도록 하는 기능인 ColumnAutoWidth 사용법과

컬럼사이즈가 자동으로 조절되는 기능인 BestFitColumn과 대한 포스팅을 하겠습니다.

 

기본적으로 Grid는 아래 그림처럼 데이터 길이에 상관없이 창 크기에 맞게 사이즈가 조절됩니다.

 

 

창 크기가 작아지면 아래 그림처럼 창 안에 있는 Grid도 같이 작아지게 됩니다.

칸이 너무 작아 데이터를 파악하기도 어렵고 보기도 힘들죠.

 

이렇게 창 크기에 맞게 자동으로 조절되는 부분을 컬럼 사이즈가 조절되지 않도록 하는 기능이 ColumnAutoWidth 기능 입니다.

해당 기능을 켜보면 아래와 같이 나타납니다.

 

창 크기가 작아지면 자동적으로 스크롤바가 생기면서 Grid를 볼 수 있도록 해줍니다.

위 기능을 사용해도 데이터 길이에 맞게 컬럼 사이즈를 조절 해주지 않기 때문에 보기가 좀 그렇습니다.

여기에 데이터 길이에 맞게 컬럼 사이즈를 조절해주는 기능인 BestFitColumn을 같이 사용해주면 좀 더 보기좋게 그리드가 보기 좋아집니다.

 

아래 그림은 ColumnAutoWidth 기능과 BestFitColumn 기능을 동시에 적용한 모습입니다.

두 가지 기능을 적절히 조합해서 데이터 길이와 창 크기에 따라 잘 사용하면 좋을 것 같습니다.

 

ColumnAutoWidth 기능을 사용하는 방법에 대해 설명을 드리면 디자인 보기에서 gridView의 속성중에

OptionView / ColumnAutoWidth 값을 false로 설정해주면 됩니다.

 

그리고 소스상에서 설정하려면 해당 그리드 뷰를 찾아서 아래와 같아 설정해주면 됩니다.

            GridView gridView = this.gridControl1.MainView as GridView;
            gridView.OptionsView.ColumnAutoWidth = false;

 

BestFitColumn 기능을 사용하는 방법은 Grid의 DataSource에 데이터를 넣고나서

GridView를 찾아 BestFitColumns()함수를 호출해주면 설정이 됩니다.

 

        private void Form1_Load(object sender, EventArgs e)
        {
            List<Data> dataList = GetDataList();

            this.gridControl1.DataSource = dataList;

            GridView gridView = this.gridControl1.MainView as GridView;
            gridView.BestFitColumns();

 

 

 

참고로 데이터가 너무 많거나 할 경우 BestFitColumns() 함수에 걸리는 시간이 길어지기 때문에 주의해서 사용해야 합니다.

 

이상으로 Grid의 컬럼 사이즈를 조절 하는 방법에 대한 포스팅이었습니다.

 

감사합니다.

반응형

댓글