본문 바로가기
반응형

C#6

[C#][WinUI3] 데이터 바인딩 시, 갱신되지 않는 문제 해결 (INotifyPropertyChanged) (참고로 WPF에서도 거의 동일한 코드로 해결이 가능하다.) ListView에 ObservableColletion를 사용하여 데이터 바인딩을 구현하였다. 이 경우 추가/삭제는 잘 동작하지만 갱신이 되지않는 현상이 나타났다. 처음으로 시도한 방법은 수정하고 싶은 인덱스에 새로 데이터를 넣는 것이었다. 하지만 이 경우 ListView가 수정될 때마다 해당 row가 깜빡이고 selection이 해제되는 문제가 발생하였다. public class Data { public string Name { get; set; } public string Value { get; set; } } public sealed partial class ExPage : Page { private ObservableCollection D.. 2023. 6. 19.
[C#][WinUI3] Window 크기 고정 및 기타 윈도우 설정 방법 WinUI3는 xaml에서 Window 사이즈를 고정할 수 없다. 그래서 코드 상으로 AppWindow를 가져와 설정해주어야 한다. Window 설정 예제 크기를 고정하고 싶은 창의 AppWindow를 가져온다. 나는 아래 함수를 전역 함수로 만들어 모든 윈도우에서 사용하였다. public static AppWindow GetAppWindow(Window window) { IntPtr hWnd = WinRT.Interop.WindowNative.GetWindowHandle(window); var windowId = Win32Interop.GetWindowIdFromWindow(hWnd); var appWindow = AppWindow.GetFromWindowId(windowId); return appWi.. 2023. 5. 19.
[C#][WPF] mbtiles 파일을 적용한 GMap에 Map Bound 추가하기 GMap에 mbtiles 맵을 적용 하여 지도를 구현하면 mbtiles 파일에 따라 지도 부분을 벗어났을 때 아래와 같이 공백 구간이 있을 수 있다. 이에 대한 해결책으로 사용자가 지도 범위를 벗어난 구간으로 드래그(화면 이동) 시, 자동으로 지도 범위의 끝으로 돌아오도록 Map Bound 기능을 추가해주었다. Code private void MapBound() { if (mapControl.ViewArea == null) return; if (mapControl.ViewArea.Right >= 180) { if (mapControl.Zoom == 3) mapControl.Position = new PointLatLng(mapControl.Position.Lat, 75); else if (mapContr.. 2022. 5. 11.
[C#][WPF] Canvas에 부채꼴(파이) 그리기 WPF에서 Canvas에 호와 부채꼴을 그리는 방법이다. 아래의 블로그에서 코드를 가져왔고 이를 사용하는 방법 및 응용을 정리하고자 한다. https://icodebroker.com/archives/14322 [C#/WPF] 파이 슬라이스 그리기 ■ 파이 슬라이스를 그리는 방법을 보여준다. 카테고리 : C#/WPF/MICROSOFT/.NETFRAMEWORK 태그 : C#,WPF,MICROSOFT,.NETFRAMEWORK,GRAPHICS,2D ▶ DrawingExtension.cs using S icodebroker.com 우선 위 파일을 다운로드 하여 프로젝트에 삽입한다. namespace를 설정하는 것 또한 잊지 않는다. 이 클래스에는 AddPieSlice 라는 전역 함수가 있고 이 함수를 사용하여 부.. 2022. 4. 27.
반응형