본문 바로가기

C# WPF6

WPF 시작하기 6. WPF MVVM - 1 WPF 시작하기 벌써 6번째 포스팅입니다. 게시물 별로 너무 텀이 길죠..ㅠㅠ 세상살이가 예상대로 안되 더라구요ㅋㅋㅋ 저번 포스팅에서 Templete에 대해서 배우고 이번 포스팅에서는 VisualStudio Blend를 사용해서 뭔가 디자인 적인 이런걸 하려고 했는데 사실 저도 Blend를 잘 다루는 것도 아니고 지금까지 포스팅 내용을 보면서 느낀게 Binding에 대한 개념을 제대로 하지 잡지 않은 것 같아서 오늘은 MVVM에 대해서 알아보고 MVVM Toolkit이라고 하는 MS에서 만든 MVVM 라이브러리를 사용해서 MVVM이 적용된 WPF앱을 하나 만들어 보려고 합니다. 우선 MVVM에 대해서 알아보도록 해야겠죠? 뭐가 많이 적혀 있어서 이게 뭐냐 하실 수 있지만 침착하게 하나씩 알아보도록 합시다.. 2021. 3. 28.
WPF 시작하기 5. WPF Template이란? 무엇일까? WPF를 배우다보면 자연스럽게 "Template" 이라는 단어를 듣게 될 것입니다. Template이란 이름에서도 알 수 있듯이 "틀"의 역할을 해줍니다. 여기서 틀이란 마치 쇠를 녹어 틀에 붓는 것으로 쇠붙이들의 모양을 잡듯이 Template은 WPF Control의 껍데기 같은 개념입니다. 이렇게만 이야기해서는 어려우니 실제로 우리가 쓰는 Control를 뜯어보도록 합시다. 적당히 WPF 프로젝트를 만들어 MainWindow에 Button과 ListView 객체를 만들어 주세요 그리고나서 Ctrl+클릭을 통해 Button 내부로 들어가주세요 버튼 내부에 들어왔나요? 위의 사진에서 확인할 수 있듯이 ButtonBase로 부터 상속받아 재정의한 OnClick 메소드와 다양한 의존 속성(Dependency.. 2020. 12. 10.
WPF 시작하기 4. WPF Layout 소개 안녕하세요? 오랜만에 돌아왔네요! 이번에는 WPF의 다양한 레이아웃에 대해서 소개하려고 합니다. 먼저 레이아웃이 무엇인지는 어렴풋이 알고 있을 것이라고 생각합니다. Layout이란 화면에 구성요소를 어떻게 배치할지 배열하는 것입니다. 그럼 WPF에서의 레이아웃은 어떤 것인지 대충감이 오시겠죠? 다른 컨트롤의 배치를 도와주는 Grid, StackPanel 등의 컨트롤이 바로 WPF에서의 레이아웃입니다. 그럼 하나씩 보도록할까요? Grid입니다. 일종의 격자처럼 나누어 그 칸에 다른 컨트롤들을 배치할 수 있는 레이아웃 컨트롤입니다. 각각 격자를 나눌때 사용한 의 *은 전체를 1로두고 해당 칸은 30%를 차지하게 한다는 의미입니다.(저는 1을 기준으로 두는 것을 좋아하지만 100으로 두고 30*을 사용하셔도됩.. 2020. 8. 9.
WPF 시작하기 3. VisualStudio 디버깅 이번 포스팅은 잠시 쉬어가는 포스팅? 으로 VisualStudio에서 어떻게 디버깅을 하는지 알려드리려고합니다. 디버깅이라고 하면 어떤 분들은 아실꺼고 어떤분들은 모르실꺼에요(당연한걸 왜이렇게 말하지..?) 디버깅이란? 내가 작성한 프로그램의 결과가 옳은지를 검사하고 옳지 않다면 왜 그런 결과가 나왔는지 그 논리적인 오류를 찾는 것입니다. VisualStudio의 디버거(디버깅을 위한 컴퓨터프로그램) 기능을 사용해서 저번 포스팅에서 만든 HelloWorld프로그램을 디버깅 해보도록 하겠습니다. 저번에 포스팅했던 HelloWorld 프로그램을 켜줍니다. 그리고 생성해주었었던 btnHello_Click 메소드로 가보도록할까요? 그럼 간단하게 BreakPoint를 찍는거부터 시작해보겠습니다. BreakPoin.. 2020. 1. 29.