Study/WPF2010.08.04 15:52

오피스 2007 부터 적용되어온 리본 UI에 대해서는 이제 모르는 분이 없을 정도로 많이 대중화 되었습니다.

윈도우 7에서는 그림판, 워드패드 등의 기본 프로그램에도 리본 UI가 적용되어서 사용자에게 편리함을 주고 있습니다.

 

이러한 리본 UI를 적용해서 개발을 하고 싶을 때는 MFC를 이용한 방법이 있습니다.

 

 

MFC 프로젝트를 생성하고 마법사에서 오피스 스타일의 프로젝트를 선택하면 리본 UI가 적용되어 사용 할 수 있습니다.

이렇게 프로젝트를 생성하고 실행시켜보면 리본 UI가 적용된 것을 확인 할 수 있습니다.

 

 

MFC에서는 이렇게 기본적으로 지원을 해주었지만 또 다른 윈도우 어플리케이션 개발 방법인 WPF에서는 지금까지 정식으로 지원을 하지 못했습니다.

 

기본 컨트롤에서는 제공하지 못하고 따로 컨트롤이 제작되어 지원을 준비하고 있었는데 이번에 RTW 버전이 출시되어 WPF 기반의 응용 프로그램 개발에서 리본 UI를 쉽게 사용할 수 있게 되었습니다.

 

RTW 출시 이전 단계에서는 .dll 파일을 수동으로 참조해서 번거롭게 작업을 해야 했었는데 이번 RTW부터 많은 편의성이 향상되었습니다.

 

첫째,  .MSI 인스톨러를 지원하여 번거로운 작업을 하지 않아도 쉬운 설치로 사용 할 수 있게 개선되었습니다.

 

둘째, WPF 개발에 많이 사용되는 MVVM 패턴을 지원하여 최신의 개발 방법을 지원하고 있습니다.

 

셋째, WPF 개발을 할 때 Expression Blend 사용이 거의 필수적인데 Blend에서 디자인 타임에서 리본 UI를 지원하여 편리한 UI 개발을 할 수 있게 되었습니다.

 

 

넷째, Visual Studio와 Expression Blend에서 프로젝트 템플릿을 지원하여 리본 UI 스타일 개발을 쉽고 빠르게 해줍니다.

 

 


   1: <ribbon:RibbonWindow x:Class="WpfRibbonApplication1.MainWindow"
   2:         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
   3:         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
   4:         xmlns:ribbon="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary"
   5:         Title="MainWindow"
   6:         x:Name="RibbonWindow"
   7:         Width="640" Height="480">

프로젝트를 생성하고 xaml 코드를 살펴보면 ribbon 네임스페이스에 관련 컨트롤이 추가된 것을 볼 수 있습니다.

리본 UI 컨트롤은 ribbon 접두어를 사용하면 해당 컨트롤이 표시되게 됩니다.

그리고 일반 WPF 프로젝트는 루트 엘리먼트가 Window인데 리본 UI가 적용되면 RibbonWindow가 사용되는 것을 알 수 있습니다.

   1: <ribbon:Ribbon x:Name="Ribbon">
   2:     <ribbon:Ribbon.ApplicationMenu>
   3:         <ribbon:RibbonApplicationMenu SmallImageSource="Images\SmallIcon.png">
   4:             <ribbon:RibbonApplicationMenuItem Header="Hello _Ribbon"
   5:                                               x:Name="MenuItem1"
   6:                                               ImageSource="Images\LargeIcon.png"/>
   7:         </ribbon:RibbonApplicationMenu>
   8:     </ribbon:Ribbon.ApplicationMenu>
   9:     <ribbon:RibbonTab x:Name="HomeTab" 
  10:                       Header="Home">
  11:         <ribbon:RibbonGroup x:Name="Group1" 
  12:                             Header="Group1">
  13:             <ribbon:RibbonButton x:Name="Button1"
  14:                                  LargeImageSource="Images\LargeIcon.png"
  15:                                  Label="Button1" />
  16:  
  17:             <ribbon:RibbonButton x:Name="Button2"
  18:                                  SmallImageSource="Images\SmallIcon.png"
  19:                                  Label="Button2" /> 
  20:         </ribbon:RibbonGroup>
  21:         
  22:     </ribbon:RibbonTab>
  23: </ribbon:Ribbon> 

실제 UI부분의 코드를 보면 이전에는 일일이 직접 코딩을 해줘야 했던 부분이 자동적으로 가능하게 되어 정말 편리하게 변했습니다. 이제 리본 컨트롤을 사용하여 WPF 환경에서도 편리하게 UI 개발을 할 수 있게 되었습니다.

 

이번에는 간단한 소개 정도로 마치고 다음부터는 WPF에서 리본 컨트롤을 사용하는 세부적인 내용을 차근차근 알아가도록 하겠습니다.

※ WPF Ribbon 컨트롤 다운로드


신고
Posted by 김태균(슈러)
Study/Windows Phone2010.03.16 15:00
오늘부터 3일 동안 미국 라스베가스에서 MIX10 컨퍼런스가 열리는데 알려진대로 첫날 키노트에서 윈도우폰7 관련 정보가 공개되었습니다.
실버라이트 기반으로 어플리케이션 개발이 가능하고 게임은 XNA Game Studio 4.0으로 가능합니다.
http://developer.windowsphone.com/windows-phone-7-series/ 에 가보시면 윈도우폰7 SDK를 포함한 다양한 정보에 접근이 가능합니다.
발표되자마자 빠르게 설치를 해보았는데 설치되는 요소는 다음과 같습니다.


기본적으로 윈도우폰 7 개발 관련 애드인과 기반이 되는 실버라이트 4와 SDK가 설치됩니다.
여기서 설치되는 실버라이트 4의 버전은 RC버전입니다.
그리고 XNA Game Studio 4.0과 윈도우폰 에뮬레이터 등이 설치되고 Visual Studio 2010 Express for Windows Phone도 함께 설치되는데 Visual Studio 2010 RC버전에서도 마찬가지로 개발 환경이 구성됩니다.

설치를 하고 Visual Studio 2010을 실행 해 보면 개발 환경에 윈도우폰과 XNA 4.0 템플릿이 추가된것을 볼 수 있습니다. 일반적인 어플리케이션을 개발 할 때는 실버라이트로 하면되고 게임은 XNA를 선택해서 개발하면 됩니다.


윈도우폰 어플리케이션을 선택하고 프로젝트를 생성하면 다음과 같은 작업창이 나타납니다.


기존의 익숙한 환경에 윈도우폰 UI의 모습과 실버라이트 기반이기 때문에 XAML 코드가 나타나는것을 알 수 있습니다. 개발 언어는 역시 C#으로 하면 되어서 기존의 지식을 살려서 따로 학습을 하지 않아도 바로 적용할 수 있습니다.

빌드를 하면 윈도우폰의 에뮬레이터가 실행되면서 윈도우폰의 경험을 그대로 살려 볼 수 있습니다.


윈도우 모바일의 에뮬레이터와는 다르게 아주 빠르게 실행되어 쾌적한 개발 환경을 제공합니다.
MIX10에서 발표가 되자마자 빠르게 설치하여 기본 개발 환경을 알아보았는데 앞으로 세세한 정보와 XNA에서의 개발환경도 알아보도록 하겠습니다. Microsoft의 윈도우폰 많이 기대해주세요 :)

신고
Posted by 김태균(슈러)
Study/Silverlight2010.03.16 14:32

MIX10에서 다양한 정보가 쏟아지고 있는데 실버라이트4 RC와 블렌드4 베타도 공개되었습니다.

Visual Studio 2010 RC에서 사용이 가능하도록 업데이트되었고 블렌드 4에서는 윈도우폰7 관련 지원도 추가되었습니다.

<프리뷰 버전과는 다르게 SketchFlow까지 포함된 완전한 버전입니다.>

<윈도우폰 애드인을 설치해야 윈도우폰 프로젝트가 추가됩니다.>


<윈도우폰 프로젝트를 만들면 다음과 같이 구성됩니다.>

다운로드 가능한 링크는 아래에 있으니 지금 바로 사용해보세요!

Silverlight 4 Tools for Visual Studio 2010 RC

Expression Blend 4 Beta

Blend Add-in Preview for Windows Phone

Blend SDK Preview for Windows Phone

신고
Posted by 김태균(슈러)
Study/.NET2010.02.11 11:13


드디어 Visual Studio 2010 RC가 공개되었습니다. MSDN에 먼저 공개되었고 오늘 일반에 공개되어 모두 사용 할 수 있습니다.


Beta 2에서 RC버전으로 기능상으로는 특별히 추가된 것은 없고 버그 수정과 성능 향상에 많은 공을 들인 것 같습니다. RC가 발표 되자마자 여기저기서 사용기가 올라오고 있는데 퍼포먼스 향상에 많은 찬사를 보내고 있습니다.


알려진 것처럼 VS2010에는 IDE에 WPF가 일부 사용되었는데 하드웨어 가속을 사용하여 렌더링을 함으로써 퍼포먼스에 도움이 되고 있습니다.



RC버전의 성능에 만족을 느끼고 VS2008을 바로 삭제 했다고 하는 사람도 있을 정도로 완성도가 많이 좋아졌으나 아쉬운점도 많이 있습니다.


기본적인 요소는 대부분 포함되었지만 Silverlight 4 Beta 개발을 하기 위해선 여전히 VS2010 Beta 2 버전을 사용해야 합니다. RC 버전에는 기본적으로 Silverlight 3 개발 환경만 포함되었고 Silverlight 4는 이전과 마찬가지로 따로 Tool을 설치해야 하는데 아직 RC에 지원되는 Tool이 발표되지 않았습니다.


그리고 또 다른 아쉬운 점은 모바일 개발환경도 포함되지 않았습니다.



일반적으로 RC 단계에서는 모든 기능요소가 포함되고 최종 마무리 작업을 해서 RTM버전이 나오는데 VS2010 RC에는 아직 포함되지 않은 부분이 있습니다.


모바일 개발 환경 같은 경우는 윈도우 모바일 7 환경이 포함 될 가능성도 있어서인지(확실한 정보는 아닙니다. 추측입니다 ^^;) 아직까진 전혀 모습을 볼 수 없는게 많이 아쉽습니다. 그렇지만 기본적인 개발환경 지원이나 성능 등에서는 많은 사람들이 합격점을 주고 있으니 Beta에서 망설였던 분들도 사용해보시면 좋을 것 같습니다.

신고
Posted by 김태균(슈러)
Study/Silverlight2009.11.23 17:35
Visual Studio 2008Expression Blend 3를 사용 할 때 Visual Studio의 프로젝트/솔루션의 xaml 파일에서 마우스 오른쪽 버튼 클릭 후 Open in Expression Blend 메뉴를 클릭하면 Blend 3가 열리면서 디자인 작업 하는 방법을 많이 사용하실겁니다.

이번에 PDC09에서 Silverlight 4가 발표되면서 VS2010과 Blend Preview for .NET 4를 설치 하신 분들이 많을텐데 VS2010에서 Open in Expression Blend 메뉴를 클릭하면 Blend Preview for .NET으로 열리는게 아니고 Blend 3로 열리는것을 경험 할 수 있습니다.

기존에 설치된 Blend 3 때문에 그런 줄 알았는데 VS2010과 Blend Preview for .NET 4만 클린 설치 해도 Blend가 실행 되지 않는다고 합니다. 이 경우에는 Open in Expression Blend 메뉴가 나타나지 않는다고 하네요.


결론적으로 Blend 3가 함께 설치된 경우에만 메뉴가 나타나며 그것도 Blend 3로만 연결되어 실행되는 결과가 나타납니다.
이 문제를 해결하기 위해서는 레지스트리를 수정해서 해결 할 수 있습니다.

레지스트리 편집기에서 HKLM\Software\Microsoft\Expression\Blend 항목에서 VS키에서 String 이름을 BlendLaunchPath 로 해주고 Expression Blend의 경로를 입력해주면 됩니다.

 1: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Expression\Blend\VS]
 2: "BlendLaunchPath"="\"c:\\Program Files\\Microsoft Expression\\Blend Preview for .NET 4
    \\Blend.exe\""

x64 시스템의 경우 경로가 조금 다릅니다.
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Expression\Blend\VS

Wow6432Node 아래에 있으니 주의하시고 수정하시기 바랍니다.

수정하기 번거로우면 첨부 파일을 열어서 시스템에 맞는 파일로 실행시켜주면 됩니다.



※ 원문은 Microsoft의 Tim Heuer 블로그에 있습니다.
신고
Posted by 김태균(슈러)
Study/Silverlight2009.11.19 04:00

Microsoft PDC09 행사 2일째가 진행중인데 Scott Guthrie의 키노트 발표에서 드디어 Silverlight 4가 공개되었습니다.
올 해 3월달에 MIX09 행사에서 Silverlight 3 베타가 발표되고 7월에 정식 버전이 나왔는데 이후 4개월만에 다시 새로운 버전 베타가 나왔네요.
PDC09 생중계를 보면서 설마설마했는데 발표가 끝나자마자 바로 다운로드가 가능해졌습니다.

아쉽게도 Visual Studio 2010 Beta2에서만 설치가 가능하며 Visual Studio 2008에서는 SL4를 지원하지 않습니다.
그렇지만 VS2010에서 새롭게 향상된 점을 이용한 SL4개발이 기대되지 않나요? ㅎㅎ

키노트에서 SL4의 새로운 점과 데모를 보여줬는데 그 동안 요구사항이 많았던 기능들이 대부분 들어간 것 같습니다.
많은 기능 향상이 이루어졌지만 구글 크롬 브라우저의 정식 지원도 눈에 띄네요.
기존에도 구글 크롬에서 실버라이트가 사용이 가능했지만 공식 지원이 아니라서 그런지 간혹 문제점이 발견되기도 했었는데 SL4에서는 크롬 브라우저를 지원하게 되었습니다.
개인적으로는 웹캠과 마이크 지원, 그리고 HTML 지원 등이 가장 맘에 드네요.
이 외에도 정말 많은 기능과 성능 향상이 이루어졌습니다.
자세한 내용은 Silverlight 4 Beta 공식 사이트에서 확인이 가능합니다.

일단 SL4 발표 소식을 간단하게 전하며 앞으로 차근차근 Silverlight 4와 Visual Studio 2010에서의 개발 방법에 대해 알아보도록 하겠습니다.


신고
Posted by 김태균(슈러)
Study/.NET2009.10.28 00:05
Visual Studio 2010 베타2에서는 WPF와 Silverlight 개발을 위한 디자이너(코드네임 Cider) IDE가 많이 향상되었습니다. VS2010 베타1에서 특히 사용하기 불편 했던 점이 성능에 관한 문제였는데 베타2에서는 불편함 없이 사용이 가능합니다.

Channel 9의 VS2010 베타2의 Cider 디자이너 소개 동영상을 보시면 성능을 더욱 향상 시킬 수 있는 팁이 소개됩니다. VS2010 베타2가 개발 되는 중에 늦게 발견되어 베타2에는 포함되지 못했다고 하는데 최종 릴리즈 때는 따로 수정이 불필요 하도록 포함된다고 합니다.

간단하게 레지스트리에 키를 추가 해주는 방법으로 성능 향상이 이루어 진다고 하는데 방법은 다음과 같습니다.
※ 레지스트리 수정은 시스템에 큰 영향을 줄 수 있으니 주의 바랍니다.

1. 먼저 VS가 실행 중이라면 모두 종료합니다.
2. regedit 명령으로 레지스트리 편집기를 엽니다.
3. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0 키를 선택합니다.
4. 마우스 오른쪽 버튼을 클릭하고 "새로만들기 - 키"를 선택하고 ClrHost라는 이름을 줍니다.
5. 새로 추가한 키에서 다시 마우스 오른쪽 버튼을 눌러 DWORD32 값을 StartupFlags 이름으로 추가합니다.
6. 값은 5로 해줍니다.
7. 레지스트리 편집기를 종료합니다.
8. 이제 모든 수정이 완료되었고 평소처럼 VS를 사용하면 됩니다.

실제로 어느정도 성능이 향상되는지는 알 수 없으나 강력히 추천하고 있으니 꼭 적용시켜서 사용하시길 바랍니다.
신고
Posted by 김태균(슈러)
Study/Silverlight2009.10.22 10:15
기존에 Visual Studio 2008에서 Silverlight 3 SDK를 설치하여 사용 하시던 분들 중에
Visual Studio 2010 Beta 2를 설치 할 때 Silverlight SDK에서 에러가 나는 경우가 있습니다.

Silverlight 3 SDK가 초기에 배포된 이후 마이너 업데이트 되어 GDR 버전이 나왔는데
VS2010 설치를 할 때 같이 설치되는 Silverlight 3 SDK 버전은 최신 버전(GDR)입니다.

VS 2010 Beta 2에서는 최신 버전을 자동으로 설치하지 않고 설치 과정에서 에러를 표시하게 되는데
이 문제는 RTM에서는 해결 될 예정이라고 합니다.

그래서 초기 버전의 Silverlight 3 SDK를 사용 하시던 경우에는 먼저 삭제를 하고 Visual Studio 2010 Beta 2를
설치하시면 에러 없이 깔끔하게 설치가 완료 될 것입니다.

그러나 이미 설치 한 경우도 Visual Studio 2010 Beta 2 사용에는 문제가 없고
단지 Silverlight 3 SDK 버전 문제로 에러가 나는 것입니다.

최신 버전의 Silverlight 3 SDK를 사용하기 위해선 Silverlight 3 SDK를 삭제하고
최신 버전인 GDR 버전으로 다시 설치 해 주면 됩니다.

여기에서 Silverlight 3 SDK GDR 버전의 다운로드가 가능합니다.

신고
Posted by 김태균(슈러)
Study2009.10.20 11:07

안녕하세요. 오랜만에 포스팅 하네요 :)

우리나라 시간으로 오늘 새벽에 Visual Studio 2010 Beta 2가 공개되었습니다.
MSDN 가입자를 대상으로 우선 공개되었고 일반 공개는 10월 22일로 예정되어 있습니다.

Visual Studio 2010 Beta 2부터 제품군 변화와 함께 로고도 새롭게 바뀌었습니다.
좀 더 세련되고 상큼하게 바뀌어서 개발자를 더욱 즐겁게(?) 해주고 있네요.



· Microsoft® Visual Studio® 2010 Professional

· Microsoft® Visual Studio® 2010 Professional with MSDN

· Microsoft® Visual Studio® 2010 Premium with MSDN

· Microsoft® Visual Studio® 2010 Ultimate with MSDN


제품군은 Team Suite 버전이 Ultimate로 바뀌었고 Professional 버전은 그대로 남습니다.

그 중간 버전들이 Premium으로 통합되었고 무료인 Express 버전 역시 제공됩니다.



Visual Studio 2010 Beta 2의 초기 화면은 위와 같습니다. Beta 1에서 문제되었던 성능이나 기타 여러 문제점들이 많이 개선되었다고 합니다.


앞으로 제 블로그나 VSTS2010 공식 블로그를 통해서 자세한 내용을 알아보도록 하겠습니다.

많은 기대 해주세요~

신고
Posted by 김태균(슈러)
Study/Silverlight2009.07.10 01:56

Silverlight 3 정식버전이 드디어 공개됐습니다.
현지 시간으로 7월 10일에 공개된다는 기사가 있었는데 약간 일찍 나왔습니다.

Blend 3도 공개됐는데 RC라고 붙은거 보니 아직 완전 정식판은 아니지만 그래도 이번에는 SketchFlow까지 포함되어서 MIX09에서 보여 주었던 모든 기능을 사용 할 수 있습니다.
Deep Zoom Composer도 역시 Silverlight 3에 맞게 업데이트 되었습니다.

아래 링크에서 다운받을 수 있습니다.
Silverlight 3 Tools 설치하시면 SDK도 같이 설치되니 한번에 설치 하실 분들은 참고하세요.


신고
Posted by 김태균(슈러)

티스토리 툴바