Hallo,
ich versuche, aus meinem Hauptfenster ein zweites Fenster in wpf zu
öffnen. Um ein bereits geöffnetes Fenster nicht erneut zu öffnnen,
versuche ich das (bislang erfolglos) zu behandeln.
1 | public partial class MainWindow : Window
|
2 | {
|
3 | HelpWindow newWindow = new HelpWindow();
|
4 |
|
5 |
|
6 | private void buttonHelp_Click(object sender, RoutedEventArgs e)
|
7 | {
|
8 | if (newWindow.IsActive == false)
|
9 | {
|
10 | newWindow.Show();
|
11 | }
|
12 | else
|
13 | {
|
14 |
|
15 | }
|
16 | }
|
Gut, das erste Mal wird das Fenster geöffnet. Sofern ich den Button
betätige, wird es nicht nochmal geöffnet.
Wenn ich das Hilfsfenster jedoch schließe und den Button nochmal drücke,
erhalte ich die Fehlermeldung:
Visibility kann nicht festgelegt oder Show, ShowDialog oder
WindowInteropHelper.EnsureHandle können nicht aufgerufen werden, nachdem
ein Window geschlossen wurde.
Macht Sinn. Schließlich ist das Objekt "newWindow" vom Carbage Collector
entfernt worden (?).
Wie geht man hier richtig vor?