.NET Framework 2.0 에서 새로 제공 되는 Win Forms Control 들

기존 .Net Framework의 windows Form control 들이 비록 windows application을 native에 비해 개발하기 쉽게 해준것은 사실이지만, 아주 기본적인 control들만 제공 되어져, professional looking한 windows application을 만들기 위해선 어쩔수 없이 native 코드를 p/invoke 해서 사용해야 했습니다.

많은 고객 분들이 이 부분에 대해 feedback을 보내주셔서 .Net framework 2.0 - whidbey - 의 windows form control들은 기존에 비해 아주 유용한 control 들이 많이 들어가게 되었습니다.

일단, 공식적인 웹페이지는 여기에 가시면 보실수 있습니다.

밑에는 이 웹페이지에 대한 요약입니다.

.........

이번 Visual Studio 2005는 3가지의 큰 목표가 있었습니다.

첫번째는 client application을 좀  더 쉽게 배포할수 있는 메카니즘을 지원 하는 것이고,
두번째는 professional looking의 visual presentation을 좀 더 쉽게 구현 할수 있도록 지원하는것이고,
마지막은 개발자가 좀 더 효율적으로 코딩 할수 있도록 지원하는것입니다.

우선 이 3가지의 큰 목표에 대한 요약을 먼저 쓰도록 하겠습니다.

Deployment of client applications

이건 쉽게 말해 web application 뿐만 아니라 client application도 web application을 배포 할때 처럼 쉽게 수많은 고객에게 배포하는 메카니즘을 지원하는것입니다. 이름은 ClickOnce 라고 부릅니다. 이 배포 메카니즘은 단순히 배포 되는 client application만 packaging 하고 배포 하는것이 아니라, 그 client application이 의존 하는 다른 컴퍼넌트 이를테면 .Net Framework라든지 MDAC같은 것도 배포 되는 client applicatoin과 함께 쉽게 배포 가능하도록 되어 있습니다. 간단한 overview는 여기를 클릭하시면 볼수 있습니다. 보다 자세한 내용은 조만간 제 Blog에 올리도록 하겠습니다.

Amazing Visual Presentation

그동안 windows forms 팀이 고객으로 부터 계속 반복적으로 들은 3가지의 요구 사항이 있습니다.
그 첫번째가 적어도 Microsoft Office나 Microsoft Windows 같은 비주얼 효과를 가진 어플리케이션을 쉽게 만들고 싶다는것이고 두번째가 control들을 forms에 위치할때 좀 더 유연했으면 좋겠다는것이고 마지막이 이런 기능들이 .NET Framework에 기본적으로 들어 있었으면 좋겠다는 것이었습니다.

이런 요구를 받아 들여 Windows Forms Team에서는 .NET Framework에 다음과 같은 새롭고 아주 유용한 control 들을 새롭게 선보이게 됐습니다.

DataGridView - 아주 유연한 Grid control 입니다. 각 셀 마다 다른 콘트롤들을 지정할수도 있고, 다른 포맷을 지원하고 customized 된 renderer을 사용할수도 있습니다. 기존에 기본으로 지원 되던 Grid 가 너무 단순하거나 너무 복잡했던것과 달리 딱 필요한 기능을 제공합니다.

MaskedTextBox - 말 그대로 입니다. text box에 filtering 과 같은 기능이 추가 된것입니다.

SoundPlayer - 기존의 .NET framework에서 Sound를 이용하기 위해서는 P/Invoke 밖에 방법이 없었지만, 이제는 SoundPlayer가 기본으로 지원됩니다.

WebBrowser - 기존의 .NET framework에서 Web Browser를 embedded 하고 싶은 경우 보통 ActiveX COM interop을 이용하였습니다만, 2.0 에서는 WebBrowser 콘트롤이 기본으로 지원됩니다.

Windows XP Visual Style - 보다 화려한 visual style을 사용하기 쉽게 도와 줍니다.

ToolStrip/ToolStrip Design Time - 딱 뭐라고 말하기 힘듭니다만, Office와 같은 Visual Effect를 가능하게 해 주는 콘트롤들의 집합입니다.

Developer Productivity

말그대로 개발자들이 좀 더 쉽고 빠르게 client applicaton을 개발 할수 있도록 하기 위해, Smart Tags, Document Outline view, SnapLines 와 같은 새로운 툴들이 VS 2005에는 들어가 있습니다.

SmartTags - 기존에는 windows forms의 control의 property를 조정하기 위해선, property window에 가서 일일이 조정해야 했습니다. 하지만 이번에 새로 들어간 Smart Tags를 이용하시면, 콘트롤이 있는 그 자리에서 그 콘트롤에 관계된 property를 좀 더 쉽게 조정하실수 있습니다.

Document Outline - 기존에는 windows form 위에 있는 control들에 대해 전체 적인 수정을 가하고 싶을때나 Z-order의 순서를 바꾸고 싶을때, 간단한 방법이 없었습니다. 새로 들어간 Document Outline 기능은 현 windows form에 있는 control들의 관계를 순서대로 보여줌으로써 좀 더 빨리 원하는 일을 할수 있도록 해 줍니다.

SnapLines - 기존에는 windows form위에 여러개의 control들을 위치 시킬때 각 콘트롤들을 맘에 들게 정렬하는것도 시간을 많이 잡아먹는 작업이었습니다. 이번 VS 2005에서는 이 작업을 좀 더 쉽고 효율적으로 도와 주기 위해 콘트롤을 움직이거나 위치 시킬때 guide line을 보여줍니다.

Improved Data Support - Data driven application을 작성 할때면, 반복적인 코드나 시간을 많이 잡아 먹는 기계적인 코딩을 해야 하는 경우가 있습니다. 이번 VS 2005에서는 이 작업을 많이 줄여 줍니다.

Layout - resize 가능한 windows application을 작성할때면 단순히 control들의 layout 때문에 많은 시간을 허비 해야 하는 경우가 있습니다. 이번 VS 2005에는 이 부분에 대해 개발자들이 신경을 많이 안 써도 되도록 다양한 layout control들을 제공합니다.

SplitContainer - 기존의 spliter의 문제점을 보완해서 좀 더 쉽게 사용하도록 만든 것입니다.

Client configuration - 기존에는 application에 관계된 preference를 저장하기 위해서 개발자가 따라 코딩을 해야 했습니다. .NET framework에서 기본적인 메카니즘을 제공 하긴 하지만 사용하기가 그렇게 편리 하지 않았습니다. 이번에 새로 들어간 Client configuration은 이같은 기본적인 작업을 무척 쉽게 할수 있도록 도와 줍니다.

...........

이상입니다.

ClickOnce나 ToolStrip 혹은 DataGridView에 대한 자세한 정보는 또 올리도록 하겠습니다.

수고!!