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

C1FlexGrid의 체크박스 선택후 Datable을 가져올시 가장 마지막에 체크한 열에 포커싱이 가있으면 해당 열의 데이터가 변경이 안됩니다. > Q&A | 토론

본문 바로가기

ComponentOne

Q&A | 토론

WinForms윈폼 C1FlexGrid의 체크박스 선택후 Datable을 가져올시 가장 마지막에 체크한 열에 포커싱이 가있으면 해당 열의 데이터가 변경이 안됩니다.

페이지 정보

작성자 뽀구 작성일 2020-11-16 10:44 조회 4,784회 댓글 1건
제품 버전 : 20162.2.8
컨트롤 이름 : C1FlexGrid

본문

먼저 해당 열 컬럼은 


아래와 같이 생성하였습니다.

//호출

this.GRD01.AddColumn("CHECK", "CHECK", 70, JINGrid.CellTextAlign.Center, true, true, true, true, true);


//생성

public void AddColumn(string name, string caption, int width, CellTextAlign align, bool editing, bool visibile, bool sorting, bool filtering, bool check)

        {

            Column col = this.c1FlexGrid.Cols.Add();

            col.Name = name;

            col.Caption = caption;

            col.Width = width;

            col.Visible = visibile;

            col.TextAlignFixed = TextAlignEnum.CenterCenter;

            col.AllowSorting = sorting;

            if (filtering) col.AllowFiltering = C1.Win.C1FlexGrid.AllowFiltering.ByValue;

            switch (align)

            {

                case CellTextAlign.Center: col.TextAlign = TextAlignEnum.CenterCenter; break;

                case CellTextAlign.Left: col.TextAlign = TextAlignEnum.LeftCenter; break;

                case CellTextAlign.Right: col.TextAlign = TextAlignEnum.RightCenter; break;

            }

            if(check)

            {

                col.DataType = typeof(Boolean);

            }


            col.AllowEditing = editing;

            if (col.AllowEditing) col.StyleNew.BackColor = StaticValues.GRID_EDITABLE_COLUMN_BACK_COLOR;

        }


이렇게 생선된 그리드의 체크박스가 체크된 열을 가져오기위해 데이터테이블을 아래와같이 가져왔서


(DataTable)this.c1FlexGrid.DataSource;


CHECK가 트루인 열만 가져오게 하였습니다.


DataRow[] dr = dt.Select("CHECK = 'True'");


문제는 이렇게 가져올시 가장 마지막에 체크된 열의 포커스가 해당열에서 움직이지 않는다는..


만약 1열을 체크하고 2열을 체크한후 그리드의 포커스를 움직이지 않으면..


1열만 True 인고 2열은 눈으로는 체크한 상태임에도 불구하고 Flase로 떨어집니다..


1열을 체크하고 2열을 체크한후 다른열에 포커스를 움직이면 1,2열 전부 true로 떨어지고요...


해당원인을 알수있을까요?


1열 2열 체크후 바로 버튼을 누를때 1,2열 전부 true로 받고싶습니다.

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

댓글목록

GCK폴님의 댓글

GCK폴 작성일

안녕하세요 그레이프시티입니다. 확인이 늦어서 죄송합니다. 혹시 아래의 내용에 대해서 좀더 자세히 설명을 부탁 드려도 될까요? 문제는 이렇게 가져올시 가장 마지막에 체크된 열의 포커스가 해당열에서 움직이지 않는다는.. 만약 1열을 체크하고 2열을 체크한후 그리드의 포커스를 움직이지 않으면.. 1열만 True 인고 2열은 눈으로는 체크한 상태임에도 불구하고 Flase로 떨어집니다.. 1열을 체크하고 2열을 체크한후 다른열에 포커스를 움직이면 1,2열 전부 true로 떨어지고요... 해당원인을 알수있을까요? 1열 2열 체크후 바로 버튼을 누를때 1,2열 전부 true로 받고싶습니다. FlexGrid를 데이터 소스 삼아 데이터를 읽어 올때 컬럼에 체크박스가 체크 되어 있지 않아도 체크된 상태로 가져온다는 말씀이신가요? 혹시 작은 샘플 프로젝트나 스크린샷등이 있다면 이해에 더 도움이 될것 같습니다. 감사합니다. 그레이프시티 드림

1 답변

WinForms윈폼 Re: C1FlexGrid의 체크박스 선택후 Datable을 가져올시 가장 마지막에 체크한 열에 포커싱이 가있으면 해당 열의 …

추천0 이 글을 추천하셨습니다 비추천0 채택채택

페이지 정보

작성자 GCK폴 작성일 2021-01-26 10:20 댓글 0건

본문

안녕하세요 그레이프시티입니다.


추가 확인드린 내용에 따로 회신이 없어 우선 이 문의는 종료하도록 하겠습니다.

혹시 아직도 동일한 문의를 가지고 계신다면 다시 한번 새롭게 문의 주시기 바랍니다.


감사합니다.
그레이프시티 드림 

댓글목록

등록된 댓글이 없습니다.

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