none
weitere WPF Forms global definieren RRS feed

  • Frage

  • Hallo,

    ich habe meiner WPF Anwendung ein weiteres Fenster hinzugefügt.

    Das kann ich mit:

                Window1 window1 = new Window1();
                window1.Show();


    Ich will das window1 Objekt für alle weiteren Fenster verfügbar machen (global definieren) und nur noch Show() und Close() darauf anwenden und bei einem OnShow Event einen Code ausführen.

    Wie geht das?

    Hat mir jemand Tips bzw. ein Beispiel?

    Dienstag, 8. Dezember 2020 15:19

Antworten

Alle Antworten

  • Hi,
    wenn es immer die gleiche Instanz des Fensters sein soll, dann nutze am besten ein singleton, d.h. ein statisches Member, welches immer die gleiche Referenz auf eine Fensters-Instanz bereitstellt.

    --
    Best Regards / Viele Grüße
    Peter Fleischer (former MVP for Developer Technologies)
    Homepage, Tipps, Tricks

    Dienstag, 8. Dezember 2020 18:21
  • Hallo Peter, danke für die Antwort,

    ich bin C++ Programmiere und muss eine C# Anwendung zeitnah debuggen, weil sie schon produktiv läuft. Habe also von C# noch nicht viel Ahnung. In dem WPF Projekt gibt es ein Fenster, das immer mal wieder mit:

    Priorität Prio = new Priorität();
    Prio.Show();

    an verschiedenen Stellen auch in Timern gestartet wird, also jedesmal eine neue Instanz bis Rechnerende.

    Was ist die einfachste Methode immer nur eine Instanz eine Fensters anzuzeigen und zu dessen Inhalt zu aktualisieren? Das muss nicht immer die gleiche Instanz sein.



    Mittwoch, 9. Dezember 2020 06:45
  • Hi

    Was ist die einfachste Methode immer nur eine Instanz eine Fensters anzuzeigen und zu dessen Inhalt zu aktualisieren? Das muss nicht immer die gleiche Instanz sein.

    Das ist aber für mich ein Widerspruch. Entweder immer die gleiche Instanz nutzen und nur den Inhalt der gebundenen Eigenschaften (Daten) ändern, oder jedes Mal eine neue Instanz mit neuen Daten erzeugen und diese aber dann auch immer vernichten.


    --
    Best Regards / Viele Grüße
    Peter Fleischer (former MVP for Developer Technologies)
    Homepage, Tipps, Tricks

    Mittwoch, 9. Dezember 2020 11:18
  • ja hast recht, ungeschickt formuliert.

    Wie lös ich das Problem am einfachsten?

    Mittwoch, 9. Dezember 2020 12:55
  • Hi,
    entweder immer die gleiche Instanz nutzen und nur den Inhalt der gebundenen Eigenschaften (Daten) ändern, oder jedes Mal eine neue Instanz mit neuen Daten erzeugen und diese aber dann auch immer vernichten.

    --
    Best Regards / Viele Grüße
    Peter Fleischer (former MVP for Developer Technologies)
    Homepage, Tipps, Tricks

    Mittwoch, 9. Dezember 2020 13:00