diff --git a/MainWindow.xaml.cs b/MainWindow.xaml.cs index d611335..7392db2 100644 --- a/MainWindow.xaml.cs +++ b/MainWindow.xaml.cs @@ -839,6 +839,9 @@ public partial class MainWindow : Window private async Task BuildEpgGridAsync() { + // Erst nach Background-Priority clearen damit laufende Event-Handler fertig sind + await Dispatcher.InvokeAsync(() => EpgCanvas.Children.Clear(), + System.Windows.Threading.DispatcherPriority.Background); EpgCanvas.Children.Clear(); var channels = _allChannels @@ -1083,8 +1086,9 @@ public partial class MainWindow : Window MinutesBefore = 5 }); } - // Grid neu bauen damit Indikator aktualisiert wird - _ = BuildEpgGridAsync(); + // Verzoegert neu bauen damit Event-Handler sauber abgeschlossen ist + Dispatcher.BeginInvoke(async () => await BuildEpgGridAsync(), + System.Windows.Threading.DispatcherPriority.Background); }; menu.Items.Add(remind); box.ContextMenu = menu;