[WPF] TreeView
WPF에서 TreeView를 사용하는 방법에 대해 알아보겠습니다. 생각보다 많은 것을 지원해주지 않아서 빠르게 알아보겠습니다. 만들어 볼 예제는 Folder, File 구조이고, MainWindow.xaml에 아래와 같이 입력하겠습니다. 그 다음 MainWindowViewModel.cs를 만들어 아래와 같이 입력하겠습니다. …
C# .NET
WPF에서 TreeView를 사용하는 방법에 대해 알아보겠습니다. 생각보다 많은 것을 지원해주지 않아서 빠르게 알아보겠습니다. 만들어 볼 예제는 Folder, File 구조이고, MainWindow.xaml에 아래와 같이 입력하겠습니다. 그 다음 MainWindowViewModel.cs를 만들어 아래와 같이 입력하겠습니다. …
WPF 개발을 하다 보면 창에 표현되는 내부 UI가 창의 크기를 넘어가는 화면을 만들 때가 있습니다. 이럴 때 내부의 UI 크기는 그대로 두면서 스크롤이 필요해지는 상황이 생기는데 그 때 ScrollViewer를 사용하면 …
이번 글에서는 DispatcherTimer에 대해 알아보겠습니다. DispatcherTimer는 간단한 수준의 주기적인 작업을 할 때 사용하는 타이머입니다. WPF에서 Thread, Task를 사용하면 주기적인 작업을 할 수 있지만 간단한 수준의 반복 작업이나, UI만 갱신하는 경우에는 …
TabControl은 여러 화면을 하나의 화면에서 볼 때 사용하는 컨트롤입니다. 예를 들어 설정, 로그, 정보 같은 화면을 각각 구성하는데 하나의 화면에서 보고 싶으면 TabControl을 사용하시면 좋습니다. 이번 글에서는 MVVM 패턴으로 TabControl을 …
이번 글에서는 간단하게 변환기 IValueConverter에 대해 알아보겠습니다. 데이터 바인딩을 사용하면 객체 유형을 변환하는 작업을 수행하게 됩니다.데이터 바인딩 글을 보시면 string으로 입력한 색상이 Background에도 적용하는 것을 볼 수 있습니다. 이는 WPF의 …
C#에서 비동기 프로그래밍을 하다 보면 Task를 사용하는 경우가 있습니다. Task는 ‘작업 단위‘를 의미하며 ‘실행할 작업을 나타내는 객체‘ 입니다. C#에서는 어떤 일을 비동기로 수행하려고 할 때 그 작업을 감싸는 틀이 Task입니다. …
이번 글에서는 WPF에서 Menu를 만드는 방법에 대해 알아보겠습니다. 기본적인 메뉴 생성부터, Check, Combo, UserControl로 만든 메뉴도 만들어 보겠습니다. 프로젝트 생성 우선 제일 먼저 WPF 프로젝트를 하나 만들어서 아래와 같이 View, …
이번 글에서는 지난 글에 이어 MVVM 패턴이 적용된 WPF 샘플 코드를 짜보겠습니다. 사람의 이름과 이름을 입력 한 뒤 리스트에 추가해주고, 리스트에서 항목을 선택하면 이름과 나이를 수정할 수 있는 프로그램을 만들어 …
이번 글에서는 WPF에서 MVVM에 대해 알아보겠습니다. MVVM 패턴은 Model, View, View Model 단어를 합쳐 만든 용어입니다. 이러한 패턴을 사용하는 이유는 UI와 로직을 명확하게 분리하고, 유지보수성과 코드 재사용성을 높이고 책임 영역을 …
이번 글에서는 데이터 컨텍스트(DataContext)에 대해 알아보겠습니다.WPF에서 데이터 바인딩과 엮여서 많이 사용되는 개념 중 하나가 DataContext입니다. Data Binding을 하다보면 Binding 속성이 안되거나 제대로 동작이 되지 않을 때가 있습니다. 그럴 때 보통 …