Der WPF-Designer hat eine schwierige Aufgabe zu erledigen. Um Ihnen eine Lebensansicht Ihres Bildschirms oder Ihrer Komponente zu zeigen, muss Code ausgeführt werden. Da Sie den Designer jedoch nicht steuern, müssen Sie dies tun, ohne irgendwelche Nebenwirkungen zu erzeugen.Wie instanziiert und begrenzt der VS Wpf Designer die Ausführung des VIewModel-Codes?
Also, wie geht das? Welche Regeln gelten für die Ausführung?
- Was passiert, wenn der Code-Behind-Code der Ansicht die Protokollierung in eine Datei oder einen Dienst ausführt?
- Was passiert, wenn der Code-Behind
MessageBox.Show
ruft? - Was passiert, wenn der Code-Behind keinen leeren Standardkonstruktor hat?
- Ich habe vor schlagen Situationen, in denen ich hatte ein Standard-Konstruktor,
GetIsInDesignMode
und das Erstellen und Zuweisen einDataContext
wenn falsch und noch der Designer nicht richtig Rendering wurde überprüft. Gibt es eine Art Stapeltiefe?
Was sind die Einschränkungen?
Ich bin mir dessen bewusst, und ich benutze es, um das gesamte ViewModel zur Designzeit zu ersetzen, da ich einige spezifische Fragen in der Frage gestellt habe und keine davon beantwortet habe. Ich denke, das sollte eher ein Kommentar sein eine Antwort, aber Punkt genommen - ich werde die Frage umschreiben, um direkter zu sein. –