From fa385178b2518b930fa79e0743622815cbbb9912 Mon Sep 17 00:00:00 2001 From: Yun Chan Date: Tue, 2 Jun 2026 10:01:24 +0900 Subject: [PATCH] =?UTF-8?q?refactor(P5b-4):=20=ED=81=90=C2=B7=EC=9D=B4?= =?UTF-8?q?=EB=A0=A5=20=EB=A6=AC=EC=8A=A4=ED=8A=B8=20ItemsSource=EB=A5=BC?= =?UTF-8?q?=20=EC=84=A0=EC=96=B8=EC=A0=81=20XAML=20=EB=B0=94=EC=9D=B8?= =?UTF-8?q?=EB=94=A9=EC=9C=BC=EB=A1=9C=20=EC=A0=84=ED=99=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - MainWindow.ActiveQueue/PastResults(ObservableCollection) 노출. XAML: ActiveQueueList/PastResultsList의 ItemsSource를 Window-relative 바인딩으로. 코드비하인드의 ItemsSource= 명령형 할당 제거. - 검증: 빌드 0/0, 83 테스트 그린, publish 후 메인 창 크래시 없이 로드(언핸들드 로그 없음). 리스트 렌더(큐/이력 표시)는 GUI 스모크 권장. --- src/Everything2Everything.App/Views/MainWindow.xaml | 6 ++++-- src/Everything2Everything.App/Views/MainWindow.xaml.cs | 7 +++++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/Everything2Everything.App/Views/MainWindow.xaml b/src/Everything2Everything.App/Views/MainWindow.xaml index f0325b3..930ae13 100644 --- a/src/Everything2Everything.App/Views/MainWindow.xaml +++ b/src/Everything2Everything.App/Views/MainWindow.xaml @@ -438,7 +438,8 @@ - + @@ -527,7 +528,8 @@ - + diff --git a/src/Everything2Everything.App/Views/MainWindow.xaml.cs b/src/Everything2Everything.App/Views/MainWindow.xaml.cs index 27b3f73..512370b 100644 --- a/src/Everything2Everything.App/Views/MainWindow.xaml.cs +++ b/src/Everything2Everything.App/Views/MainWindow.xaml.cs @@ -30,6 +30,10 @@ public partial class MainWindow : Wpf.Ui.Controls.FluentWindow /// 옵션 패널 XAML이 TwoWay 바인딩하는 옵션 뷰모델(품질·출력폴더). public OptionsViewModel Options => _options; + /// Active Queue / Past Results 리스트가 XAML에서 ItemsSource로 바인딩하는 컬렉션. + public ObservableCollection ActiveQueue => _activeQueue; + public ObservableCollection PastResults => _pastResults; + public ICommand AddFilesCommand { get; } public ICommand ProcessQueueCommand { get; } public ICommand CloseCommand { get; } @@ -48,8 +52,7 @@ public partial class MainWindow : Wpf.Ui.Controls.FluentWindow InitializeComponent(); - ActiveQueueList.ItemsSource = _activeQueue; - PastResultsList.ItemsSource = _pastResults; + // ActiveQueueList/PastResultsList의 ItemsSource는 XAML이 ActiveQueue/PastResults에 바인딩(선언적). InitializeOutputFormats(); LoadHistory();