WPF 개발 시 많이 사용하는 UI 라이브러리가 몇 가지 있습니다.그 중에서 WPF UI는 개인 프로젝트를 진행할 때 자주 사용합니다. Material Design과 비슷한 느낌인데 덜 부담스럽고 어느정도 완성도가 있으며 완전히 오픈소스라서 마음먹으면 수정해서 사용할 수 있기 때문입니다. 이전 버전 (아마 3.xx)으로 잘사용하고 있어서 굳이 버전업을 할 필요를 못느꼈는데 새로운 프로젝트를 시작하면서 한 번 시도해봤습니다. WPF UI개인적으로 잘쓰고 있는 라이브러리라서 어느정도 인지도가 있을 것 같은데 nuget 다운로드 수를 보면 매우 저조합니다.5년 이상 된 라이브러리일텐데 다운로드가 겨우 440k 입니다. 생각해보니 그럴 수도 있겠다 싶습니다.사용법이 꽤나 까다로워서 마음편하게 쓰기가 어렵..
UniformGrid는 유용한 컨트롤이지만 Grid나 StackPanel보다는 상대적으로 덜 쓰이는 컨트롤이죠. 잘사용하면 정말 편리합니다. 특히 Dashboard를 구현할 때 편리합니다. 그런데 StackPanel과 마찬가지로 ItemsSource가 없기 때문에 다른 방법을 사용해줘야합니다. 사실 StackPanel과 같은 방법입니다. ✅ UniformGrid에 ItemsSource 달기 서두에 말씀드린 것 처럼 StackPanel과 같은 방식으로 하면 됩니다.ItemsControl을 사용하는 것이죠. View ..
개발 중 높은 권한을 요구하는 작업이 필요한 경우, Visual Studio를 관리자 권한으로 실행하거나, WPF 애플리케이션을 항상 관리자 권한으로 실행되도록 설정해야 할 때가 있습니다. 이번 글에서는 Visual Studio 2022와 .NET 8 환경에서 이러한 설정을 적용하는 방법입니다. Visual Studio 에서 관리자 권한으로 컴파일 / 실행하는 방법 Visual Studio를 관리자 권한으로 실행하기간단한 방법으로 Visual Studio 자체를 관리자 권한으로 실행하면 Visual Studio에서 개발 중인 S/W 또한 관리자 권한으로 실행되게 됩니다. (1) 한 번만 관리자 권한으로 실행하기시작 메뉴를 엽니다.Visual Studio 아이콘을 찾아 마우스 오른쪽 버튼을 클릭합니..
UI를 개발하다 보면 문자열을 많이 사용할 수밖에 없는데 별생각 없이 코딩하다 여기저기 너저분한 문자열들을 볼 수 있게 됩니다. 여기서는 존댓말, 저기서는 반말, YES일 때도 있고 OK 일 때도 있습니다. 여러 번 사용되는 문자열은 가급적 runtime 코드 외부로 빼는 것이 유리합니다. 몇 가지 방법에 대해 공유합니다. 고정 문자열 관리 const절대 변경되지 않는 문자열일 경우, const가 적절합니다.public static class Messages{ public const string ErrorFileNotFound = "The file not be found."; public const string SuccessMessage = "완료.";}Console.WriteLine(M..
UI는 폰트만 바꿔도 분위기가 크게 바뀝니다.보통 디자이너가 사용한 폰트를 내 PC에 설치하고 Visual Studio에서 해당 폰트를 xaml에 적용해서 개발을 한 뒤 배포를 하는데 막상 다른 PC에서는 기본 폰트로 출력되는 상황을 다들 경험해 보셨을 거 같습니다. 위와 같은 상황에서 폰트를 해당 PC에 설치하거나 디자이너가 선택한 폰트를 포기하고 기본 폰트로 전체 UI를 수정하기도 하는데 가장 좋은 방법인 어플리케이션에 폰트를 리소스로 등록하여 사용하는 방법입니다. WPF에서 Font를 포함하기구글링을 하면 신기하게 Font를 포함하여 배포하는 방법이 참 많은데 이게 참 은근히 잘안됩니다.많은 정보는 오히려 혼란을 주는 것 같습니다. 1. Font를 프로젝트 내 폴더에 복사사용하려는 ..
WPF에서 GMap을 사용하는 과정입니다. GMap은 지도 라이브러리로 Google Map 뿐 아니라 다양한 지도 서비스를 사용할 수 있습니다.간단한 설정만으로 훌륭한 지도 컨트롤을 사용할 수 있어서 매우 놀라웠습니다.예전에 Binary로 된 지도 데이터를 읽어서 DirectX로 힘들게 그려주던 생각이 나서 조금은 허무하기도 했습니다.다만 인터넷에 연결되어 있어야 정상적인 사용이 가능합니다. 제가 사용한 방식에 대해서 공유합니다. 프로젝트 생성 및 Nuget package 설치Visual Studio에서 WPF 프로젝트를 생성합니다..NET8을 사용했습니다. nuget 관리자에서GMap.NET.Core를 설치합니다.GMap.NET.WinPresentation도 함께 설치합니다.두 package..