검색결과 리스트
2010/01/18 에 해당되는 글 1건
71.RichTextArea Part 1
2.RichTextArea Part 2
3.Accessing Web Camera and Microphone
4.Right Click Mouse Events
5.MouseWheel API
6.Using Silverlight Controls As Drop Targets
7.DataGrid Enhancements
8.Printing API Basics
9.Hosting HTML Content
10.Accessing the Global Clipboard Programmatically
11.Using the ViewBox Control
12.Asynchronous Data Validation
13.BiDi and Right-to-Left Support
14.Notification API
15.Local File Access
16.RIA Services support in Visual Studio 2010
| 김영욱 차장 Microsoft Korea .NET Evangelist Enterprise UX 를 위한 UI 기술과 SOA, Cloud Computing, NUI등 다양한 분야의 접목과 응용을 통해 최적의 IT 인프라 구축을 위해서 노력하고 있다. Email: iwinkey@hotmail.com Blog: http://winkey.tistory.com |
국내에서 뿐만 아니라 전 세계적으로 많은 데이터를 보여주기 위해서 가장 많이 사용되는 방법은 바로 DataGrid 일 것입니다. Silverlight에서는 기본적으로 DataGrid를 제공하고 있으며 또 상용 컴퍼넌트도 종류가 아주 많이 있습니다.
Silverlight 4에서는 기본 DataGrid도 개선 사항이 있다고 합니다.
<그림1> Sample Program
Silverlight 4에서는 DataGrid가 좀 더 Windows용 응용 프로그램에 가까워 졌습니다. 앞서서 설명했던 마우스 오른쪽 버튼의 사용이나 마우스 휠 버튼의 사용등과 마찬가지로 DataGrid 역시 기존에는 그냥 데이터를 뿌려주는 것에 불과 했던 것에서 Windows 용 응용 프로그램에서 사용했던 경험을 그대로 활용할 수 있는 방향으로 바뀌었습니다.
<그림2>DataGrid 컬럼의 설정
<그림2>에서 보는 바와 같이 컬럼의 폭을 설정 할 수 있는 방법이 많아 졌습니다. 자동으로 설정되는 Auto, 고정된 폭을 가지고 있는 Pixel, 그리고 나머지 공간을 균등하게 가져가는 Star 마지막으로 Cell이나 Header를 기준으로 설정하는 SizeToCells, SizeTOHeader 등이 있습니다.
- <data:DataGrid AutoGenerateColumns="False">
- <data:DataGrid.Columns>
- <data:DataGridTextColumn Header="One" Width="Auto" />
- <data:DataGridTextColumn Header="Two" Width="*" />
- <data:DataGridTextColumn Header="Three" Width="3*" />
- </data:DataGrid.Columns>
- </data:DataGrid>
<소스1>DataGrid의 활용 예
<소스1>에서 보면 3~5번 줄에서와 같이 세 개의 컬럼이 추가 되어 있는데 Auto, Star, 등을 지정하고 있습니다.
<그림3>가변 컬럼의 변화
<그림3>의 결과를 보면 25%, 75%사이즈를 가지고 있는 것을 볼 수 있습니다. 또 하나 재미있는 점은 클립보드를 사용할 수 있게 된 점이라고 할 수 있습니다. 클립보드를 사용할 수 있게 되어서
<그림4>클립보드의 활용
<그림4>처럼 DataGrid의 내용을 엑셀에 붙여넣는 것과 같은 작업이 가능하게 되었습니다.
마지막으로 FlowDirectionText 속성을 사용해서 글자의 흐름을 제어할 수 있는 이 기능을 통해서 아랍어와 같은 RTL(Right To Left)기반의 언어들을 지원할 수 있습니다.
새로 추가된 DataGrid의 기능을 테스트 해볼 수 있는 Sample을 첨부합니다.
Sample 소스에서 Customer.cs 파일은 데이터를 바인딩 하기 위해서 추가한 Entity Class의 역할을 합니다. 그리고 DataGridLenthUnitType.cs 는 DataGrid의 Length 옵션을 표현한 Class 입니다.
First Look Silverlight 4 19-7 Data Grid.zip
댓글을 달아 주세요