Bug fix related to closing windows

This commit is contained in:
2026-09-19 16:49:12 +03:00 Unverified
parent 8e3002f771
commit 2737ccc490
2 changed files with 16 additions and 3 deletions
+14 -2
View File
@@ -26,22 +26,34 @@ namespace IPClab1;
public sealed partial class MainWindow : Window public sealed partial class MainWindow : Window
{ {
private readonly DispatcherTimer timer = new() { Interval = TimeSpan.FromMilliseconds(100) }; private readonly DispatcherTimer timer = new() { Interval = TimeSpan.FromMilliseconds(100) };
private bool IsClosed;
public MainWindowViewModel ViewModel; public MainWindowViewModel ViewModel;
public MainWindow(MainWindowViewModel viewModel) public MainWindow(MainWindowViewModel viewModel)
{ {
InitializeComponent(); InitializeComponent();
IsClosed = false;
Closed += MainWindow_Closed;
ViewModel = viewModel; ViewModel = viewModel;
ExtendsContentIntoTitleBar = true; ExtendsContentIntoTitleBar = true;
SetTitleBar(AppTitleBar); SetTitleBar(AppTitleBar);
timer.Tick += Timer_Tick; timer.Tick += Timer_Tick;
timer.Start(); timer.Start();
} }
private void MainWindow_Closed(object sender, WindowEventArgs args) => IsClosed = true;
private void Timer_Tick(object? sender, object e) private void Timer_Tick(object? sender, object e)
{ {
AppTitleBar.Title = Title; if (!IsClosed)
ViewModel.RefreshInfo(); {
AppTitleBar.Title = Title;
ViewModel.RefreshInfo();
}
} }
private void GridView_SizeChanged(object sender, SizeChangedEventArgs e) private void GridView_SizeChanged(object sender, SizeChangedEventArgs e)
+2 -1
View File
@@ -48,7 +48,8 @@ public partial class MainWindowViewModel(WindowListService windowListService, Wi
partial void OnSelectedWindowChanged(WindowInfo value) partial void OnSelectedWindowChanged(WindowInfo value)
{ {
(Width, Height) = _windowInteractionService.GetWindowSize(value.Hwnd); if (value != null)
(Width, Height) = _windowInteractionService.GetWindowSize(value.Hwnd);
} }
[ObservableProperty] [ObservableProperty]