Front-End(5)
-
TelerikGrid Reorderable
회사에서 위와 같이 TelerikGrid를 사용해서 이미지 업로드 하는 UI이가 있습니다. 이미지는 순서와 상관없이 비동기로 업로드가 되며, 업로드가 될 때 ProgressBar가 자동으로 100%까지 채워집니다. 에러 로컬에서 테스트를 할 때는 정상적으로 잘 동작을 했는데, 성능이 낮은 서버에서 실행하니 자꾸 에러가 났습니다. Uncaught (in promise) Error: System.ArgumentException: There is no tracked object with id '14'. Perhaps the DotNetObjectReference instance was already disposed. (Parameter 'dotNetObjectId') at Microsoft.JSInterop...
2023.06.13 -
SDK 7.0.302 사태 정리
2023년 5월 16일 .NET SDK 7.0.302가 출시 되었습니다. 출시 된 후 잘 되던 Blazor가 정상적으로 빌드 되지 않아 난리가 났습니다. 이슈들 https://devblogs.microsoft.com/visualstudio/visual-studio-2022-17-6-now-available/ https://github.com/dotnet/sdk/issues/32637 사람들이 정상적으로 빌드 되지 않는다고 여러 이슈들을 올렸습니다. 저 또한 RZ9991, CS1660, CS0029 에러들이 펑펑 터졌습니다. .NET 대응 https://github.com/dotnet/razor/issues/8718 .NET SDK 7.0.203 버전으로 다운그레이드 하라고 가이드 중이며, 롤백 중입니다...
2023.06.09 -
DataGrid ColumnItem의 버튼으로 해당 행 삭제
개요 이 포스트는 WPF-MVVM에서 DataGrid의 행들이 각각 버튼을 가지고 있고 그 버튼을 클릭 했을 때 해당 행이 삭제되는 예제입니다. WPF 프로젝트 생성 MVVM 패턴으로 하기 때문에 아래와 같이 파일을 생성합니다. 파일명 설명 DelegateCommand ICommand의 구현체이며 Button의 Click 바인딩으로 사용합니다. Item DataGrid에 들어가는 데이터 입니다. PropertyChangeHelper INotifyPropertyChanged 구현체로 바인딩 객체의 변화에 대해 이벤트를 발생하여 UI를 갱신합니다. MainWindow.xaml DataTemplate은 데이터의 틀을 지정해주는 Template입니다. DataGrid에서 View라는 Column을 따로 Temp..
2023.04.23 -
WPF Binding의 RelativeSource 속성
소개 WPF에서 Binding의 태그 중 RelativeSource 속성은 바인딩 할 객체를 찾을 때 사용됩니다. 자기 자신 자기 자신이 바인딩 소스인 경우 self로 자정하고 Path로 어떤 것을 바인딩 할 지 지정하면 됩니다. 상위 객체 자신의 부모 객체의 경우 감싸고 있는 Control의 이름을 AncestorType로 지정해주면 됩니다. 하지만 StackPanel이 StackPanel로 감싸고 있을 경우는 어떻게 할까요?? 위와 같을 때는 AncenstorLevel=2처럼 몇번 째 부모 Control인지 지정해주면 됩니다. ControlTemplate 정의 엘리먼트 일 경우 x:Name으로 Control 찾기 위와 같이 상대 경로로 찾지 않고 ElementName으로 바로 찾을 수 있습니다.
2023.04.23 -
C# Clipboard 및 Serialize
개요 이 포스트는 WPF-MVVM에서 UI의 색상을 복사하여 붙여넣기 예제 프로그램 및 설명입니다. C#에서 클립보드를 사용하기 위해서는 System.Windows의 Clipboard Class를 사용합니다. 복사하기 클립보드에 복사하기 위해서는 SetDataObject를 사용합니다. Clipboard.SetDataObject(object data, bool copy) 두번째 매개 변수인 copy의 경우 true 이면 프로그램을 종료하여도 클립보드에 계속 남아 있고 false 인 경우 프로그램이 종료하면 클립보드의 데이터도 같이 없어집니다. Clipboard.Clear(); var dataObject = new DataObject(); dataObject.SetData("SelectedColor", Se..
2023.04.19