DevExpress 활용하여 단순 조회 화면 XML파일로 끝내기
안녕하세요.
오늘 보여드릴 내용은 2008년 한국에 귀국한 후 쭈욱 공부하던걸 적용 한 내용이라고 보시면 됩니다.
2008년 Dynamic Property 관련되서 많은걸 공부 하였고, 2009년도에 엔씨정보OO 회사에 다니면서,
내부적으로 Exceed 컴보넌트에 적용했던 내용입니다.
그간 사이트를 돌아 다니면서 보게 된 것을 적용한 정도다 라고 보시면 됩니다.
최근 신세계 사이트에서 단순 조회 화면은 XML 형태로 적용시 30분 정도 작업이면 끝난다고 이야기 했는데요.
불가능한것도 아니기에 적용해서 보여드립니다.
- DummyData.xml 파일을 열어서 DataTable을 얻는다(DBMS 존재시 직접 데이터를 얻어도 무방)
- 콤보성 데이터는 DisplayMember, ValueMember 정의 후 Page에 DataTable을 갖고 있는다.
- DummyData를 바인딩 처리 할 때 GridDesign XML 파일을 읽어서 적용 한다.
- Property GetValue 를 활용 합니다.
- Generic primitive type converting 을 활용 합니다.
- 확장 메소드를 활용하여 코딩을 간결하게 적용 합니다.
- XML Deserial/Serial 을 활용 하여 Grid 동적 디자인 & 바인딩 처리가 가능합니다.(CDATA는 예외 입니다)
- MSDN FormatType, FormatString 을 활용 합니다.
그렇게 어려운 내용은 아니지만, DevExpress 란 컴포넌트에 맞게 적용해야 되기에 시간이 좀 걸렸을뿐,
Common 으로 제공이 된다면 XML 작업으로 단순 조회성 페이지는 끝날 듯 싶습니다.
화면 캡쳐로 설명 드리겠습니다.
DevExpresss Demo 에 있는 화면입니다. (Trial 은 소스 제공이 안되네요)
이 화면에서 핵심 기능은
2번째 Product를 XML 디자인 소스에서 콤보로 적용 가능 유무 입니다.
가능 합니다.
순서는 아래와 같습니다.
- Combo성 데이터 DataTable의 DisplayMember, ValueMember를 사전 정의 합니다.
- 사전 정의된 Member를 Grid Design 소스에서 해당 컬럼에 동일하게 정의를 내립니다.
- 1,2를 토대로 맞은 정보라면 바인딩 처리 합니다.
해당 XML 소스는 아래와 같습니다.
우선 DummyData에서 정의된 항목입니다.
해당 컬럼이 정의된 Grid Design 소스 입니다.
보시면 아시겠지만, 콤보 DataTable ID는 dt_lookup1 로 정의 했습니다.
해당 dt_lookup1은 아래와 같이 소스상에서 찾습니다.
핵심은 다 설명 드렸습니다.
결과 내용입니다.
초기 화면입니다.
데이터 초기화 후 적용 결과 화면입니다.
보시면 아시겠지만,
첫번째 행의 UNIT_PRICE 는 51,
두번째 행의 UNIT_PRICE 는 28.01 로 소수점이 표현되는데요.
해당 DummyData Excel 내용은 아래와 같습니다.
아마 DevExpress에서 소수점 2자리가 00일 경우 기본 처리 기능이 있나 봅니다.
디자인 XML 적용 후의 모습입니다.
일단 Currency 와 Percent가 달라진 모습이 보입니다.
해당 컬럼 Grid Design 소스 입니다.
콤보 바인딩 처리된 모습입니다.
변경 후 결과 입니다.
감사 합니다.
'습작 및 R&D' 카테고리의 다른 글
DummyData From XML (0) | 2015.01.03 |
---|---|
[DevExpress XML] Validation 처리 기능 추가 (0) | 2015.01.02 |
LEX 과제. (0) | 2014.09.24 |
C# PARSING – 1 (String, Comment, MultiComment) (0) | 2014.08.14 |
SQL PARSING – 4 (ORACLE COMMENT PARSING) (0) | 2014.08.12 |