옛날에 Database 프로그램을 배우기 시작할 때, 셈플 애플리케이션을 찾아보면 대부분 Northwin라는 회사의 데이터베이스를 이용하고 있었는데요. 이것은 Microsoft가 셈플로 사용하라고 공개를 해 놓은 것입니다. Microsoft github sql-server-samples 레파지토리에 생성하는 쿼리가 있기 때문에 누구나 쉽게 생성하고 사용할 수 있습니다. 쿼리와 Visual Studio를 이용해서 LocalDB에 Northwind database를 생성하는 방법을 설명합니다. 1. Visual Studio 2019, 2022 Visual Studio Installer를 설치할 때 Data storage and processing workload를 체크하고 설치를 해야 다음 작업을 진행할 수..
WPF .Net 5 프로젝트를 생성한 후 ClickOnce로 배포 패키지를 만들면, ClickOnce 버전은 생성되지만, 그 버전 넘버를 애플리케이션에서 불러와서 사용하는 방법은 현재 존재 하지 않습니다. 이 기능은 .Net 6에서 구현될 것이라고 생각했는데, .Net 7 preview에서도 현재까지는 구현되어있지 않는것 같습니다. 이 부분에 대한 자세한 사항은 여기를 참고하시기 바랍니다. 그래서, 검색해보니 비슷한 기능을 할 수 있는 2가지 방법이 있는데, 우선 WpfSettings라는 오픈소스를 이용하는 방법으로 시도를 해보지 않아, 링크만 남겨 놓도록 하겠습니다. 두번째 방법은 빌드 일시를 애플리케이션에 강제로 입력해서 빌드하는 방법으로, 사용하기가 좋아서 이 방법을 이용하시면 쉽게 구현이 가능하실..
2022.03.15 - [WPF] - [기초] ComboBox, ListBox 중요 프로퍼티 사용법 part2 2022.03.14 - [WPF] - [기초] ComboBox, ListBox 중요 프로퍼티 사용법 part1 마지막으로, SelectedValue, SelectedValuePath에 대해서 설명하도록 하겠습니다. SelectedIndex는 별도로 설명할 필요는 없을 것 같아서 생략하겠습니다. 1. SelectedValue, SelectedValuePath 활용 Next1Window.xaml 아래 Detail을 추가했습니다. CodeModel.cs 추가 public class CodeModel { public string Code { get; set; } public string Name { g..
2022.03.14 - [WPF] - [기초] ComboBox, ListBox 중요 프로퍼티 사용법 part1 이번 포스트에서는 SelectionChanged 이벤트를 이용하는 기본 방법과 이벤트 Arguments를 사용하는 방법에 대해서 알아 보도록 하겠습니다. 먼저, part1에서 만들었던, 리스트박스에서 아이템을 선택하면 Delete 버튼이 활성화되는 예제를 SelectionChanged 이벤트를 이용해서 만들어 보도록 하겠습니다. 1. 컨트롤의 이벤트가 발생했을 때 뷰모델에 전달하는 방법 컨트롤의 이벤트를 뷰모델에 전달하기 위해서는 Microsoft.Xaml.Behaviors.Wpf nuget package가 필요 합니다. 프로젝트에 해당 nuget package를 설치합니다. 이 녀석에 대한 더..
ComboBox와 ListBox 컨트롤을 처음 접하거나, MVVM 패턴으로 사용하는 것이 익숙하지 않은 개발자를 위해 컨트롤 사용 방법을 자세하게 포스팅 하도록 하겠습니다. 1. Overview ComboBox : 오른쪽에 아래 화살표(?)를 클릭하여 드롭다운 목록을 보이도록 한 후 원하는 아이템을 선택할 수 있는 컨트롤로 버튼을 눌러야 데이터의 목록이 출력되며, 무조건 1개만 선택 할 수 있습니다. 더 자세한 사항은 여기를 참고하시기 바랍니다. ListBox : 데이터의 목록을 출력한 후 아이템을 선택할 수 있는 컨트롤로 처음부터 데이터 목록 보이며, 1개 혹은 여러개의 아이템을 선택할 수 있습니다. 더 자세한 사항은 여기를 참고하시기 바랍니다. 2. 필수 프로퍼티 ComboBox, ListBox를 사..
2022.02.21 - [WPF] - Microsoft.Toolkit.Mvvm을 이용한 간단한 프레임워크 part1 이번에는 프레임워크에서 사용할 수 있는, 금액 표시 컨트롤을 만들어 보도록 하겠습니다. 커스텀 컨트롤을 만드는데, 기존 프로젝트에 추가하면, 나중에 컨트롤만 따로 다른 프로젝트에서 사용하기가 번거로우니, 커스텀 컨트롤 전용 프로젝트를 만들어서 재사용성을 높이도록 하겠습니다. 1. 프로젝트 추가하기 WPF로 검색하면, WPF Application, WPF Class Library, WPF Custom Control Library, WPF User Control Library 이렇게 4가지가 나옵니다, WPF Application : WPF 응용 프로그램 프로젝트로 빌드하면, exe 파일이 만..
2022.03.08 - [WPF] - List vs ObservableCollection? part1 2023-02-02 Microsoft.Toolkit.Mvvm nuget package에서 CommunityToolkit.Mvvm으로 변경했습니다 지난 포스트에 이어서 계속 진행 하도록 하겠습니다. 아래 화면에서 Add 버튼을 눌렀을 때의 동작을 추가하도록 하겠습니다. 1. Add 버튼 처리 MainViewModel.cs를 수정합니다. Add에서 LeftPeople와 RightPeople에 Insert를 이용해서 신규 사용자를 추가합니다. private void OnRightButton(string parameter) { switch (parameter) { case "Refresh": break; cas..
처음 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를 이..
- Total
- Today
- Yesterday
- MVVM
- PRISM
- Cross-platform
- Microsoft
- #MVVM
- visual studio 2019
- Windows 10
- Build 2016
- XAML
- dotNETconf
- ComboBox
- C#
- .net
- #prism
- kiosk
- Behavior
- Always Encrypted
- uno-platform
- UWP
- ef core
- .net 5.0
- Bot Framework
- windows 11
- LINQ
- IOT
- Visual Studio 2022
- uno platform
- #Windows Template Studio
- WPF
- #uwp
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |