처음 WPF 개발을 시작하는 분들이 List와 ObservableCollection의 차이점이나 사용 방법에 대해서 알지 못하는 것 같아서 간단하게 포스팅을 하려고 합니다. 1. 공통점 vs 차이점 공통점 : 둘다 데이터 목록을 관리합니다. 차이점 : ObservableCollection은 데이터의 추가, 삭제시 UI에 즉시 반영 됩니다. ObservableCollection이 List에 비해 메모리를 좀더 차지 합니다. 대량의 데이터를 화면에 출력해야하는 경우 ObservableCollection을 사용하면, 성능에 영향을 줄 수 있습니다. (데이터 하나 추가할 때마다 CollectionChanged 이벤트가 계속 발생 -> UI에 반영) 일반적으로 List가 ObservableCollection에 비..
2022.03.02 - [WPF] - Microsoft.Toolkit.Mvvm을 이용한 간단한 프레임워크 part3 - Busy 화면 구현 2022.02.24 - [WPF] - Microsoft.Toolkit.Mvvm을 이용한 간단한 프레임워크 part2 - Frame Navigation 2022.02.21 - [WPF] - Microsoft.Toolkit.Mvvm을 이용한 간단한 프레임워크 part1 여러가지 형태의 팝업을 만들어서 사용할 수 있는데, 이번 포스팅에서는 레이어 팝업을 만들어 보도록 하겠습니다. 레이어 팝업이라는 것은 팝업 처럼 보이기는 하지만 실제 팝업은 아니고, Border같은 컨트롤의 보이기 속성을 변경하면서 팝업 처럼 보이는 효과를 내는 것을 이야기 합니다. 또한, 별도의 윈도우를..
2022.02.24 - [WPF] - Microsoft.Toolkit.Mvvm을 이용한 간단한 프레임워크 part2 - Frame Navigation 2022.02.21 - [WPF] - Microsoft.Toolkit.Mvvm을 이용한 간단한 프레임워크 part1 애플리케이션에서 시간이 오래 걸리는 작업을 진행할 때 화면에 Busy...라는 메시지를 출력하면서 전체 화면을 Dim처리하는 방법에 대해서 간단히 알아 보도록 하겠습니다. 1. MainWindow.xaml MainWindow.xaml에 Busy가 출력되도록 수정합니다. Busy 상태에서는 화면에 다른 컨트롤을 사용할 수 없도록 Border의 Background 컬러를 추가하고, ViewModel의 IsBusy 프로퍼티와 Converter를 이..
Group을 추가하는 방법에 대해서 검색해보면 대부분 Code를 이용해서 CollectionViewSource를 생성해서 사용하는 방법이 나오고, MVVM Pattern에서는 어떻게하는지 잘 나오지 않습니다. 그래서, CollectionViewSource에 대해서 간단히 알아보고, MVVM Pattern에서는 어떻게 사용하는지 알아보도록 하겠습니다. 1. CollectionViewSource CollectionView클래스의 파생된 클래스로, CollectionView 속성을 설정하고, 설정된 기본 보기를 다른 컨트롤에 전달할 수 있는 기능이 있습니다. 정리를 하자면, 컨틀로과 뷰모델 사이에 CollectionViewSource 인스턴스가 하나더 있으면서, Sort, Filter, Group을 원본 데이..
Visual Studio로 개발하는 분들 중은 c# 코딩 중 prop 치고 Tab키를 두번 누르면 어떻게되는지 아실 것이라고 생각합니다. 그렇쵸? 그래도, 혹시 모르는 분도 있을 수 있으니 아래 이미지를 추가하겠습니다. 아래 이미지처럼 입력하면 인텔리센스에 의해서 드롭다운 팝업이 출력되면서 prop와 관련된 녀석들이 나오는데, 여기서 탭키를 두번 눌러주면 아래처럼 프로퍼티를 쉽게 정의할 수 있는 코드가 생성됩니다. 여기서 int를 그냥 사용하실려면, tab 아니고, 문자열로 바꾸실려면 str치고 탭, 탭 눌러주시면 string으로 변경되면서 커서가 MyProperty로 이동합니다. 그러면 프로퍼티명을 입력하고 엔터를 치면 하나의 프로퍼티가 만들어 집니다. 참 쉽죠? 이렇게 코드를 하나의 몇개의 글씨를 이..
- Total
- Today
- Yesterday
- kiosk
- UWP
- Always Encrypted
- visual studio 2019
- #MVVM
- Behavior
- Build 2016
- IOT
- windows 11
- #uwp
- .net
- PRISM
- ef core
- WPF
- Windows 10
- LINQ
- uno-platform
- uno platform
- MVVM
- Cross-platform
- Microsoft
- XAML
- #prism
- dotNETconf
- Visual Studio 2022
- #Windows Template Studio
- C#
- ComboBox
- .net 5.0
- Bot Framework
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |