Ich habe beschlossen, dass alle meine WPF-Seiten ein Routingereignis registrieren müssen. Anstatt auf jeder SeiteWie erstelle ich eine Basisseite in WPF?
aufzunehmen, entschied ich mich, eine Basisseite (namens BasePage) zu erstellen. Ich legte die obige Codezeile in meine Basisseite und änderte dann einige meiner anderen Seiten, um von BasePage abzuleiten. Ich kann nicht nach diesem Fehler erhalten:
Error 12 'CTS.iDocV7.BasePage' cannot be the root of a XAML file because it was defined using XAML. Line 1 Position 22. C:\Work\iDoc7\CTS.iDocV7\UI\Quality\QualityControlQueuePage.xaml 1 22 CTS.iDocV7
Weiß jemand, wie man am besten eine Basisseite erstellen, wenn ich Ereignisse setzen kann, Eigenschaften, Methoden, etc., die ich von jeder wpf Seite zu verwenden, um der Lage sein soll?
Wie aber teilen Sie Ihre PigFinderPage-Ressourcen zwischen all Ihren abgeleiteten Seiten? Das obige Beispiel scheint zu implizieren, dass Sie sie in jeder XAML-Klasse der abgeleiteten Klasse definieren. In diesem Fall müssen Sie die Basisressourcen deklarieren, sobald Sie Schwierigkeiten haben, ohne sie kopieren und einfügen zu müssen. – Schneider
Ah ja. Alle freigegebenen Ressourcen, die ich verwende, befinden sich außerhalb der Seite. Einige in App.xaml, einige in Ressourcen-Wörterbüchern, die ich nach Bedarf importiere. –
Zwei Dinge: Beenden Sie die Xaml-Definition mit my: PigFinderPage> und verwenden Sie beim Erben von einer anderen Assembly: xmlns: my = "clr-namespace: Qaf.PigFM.WindowsClient; assembly = QafPigFM.WindowsClient.BasePages". Stellen Sie keinen Abstand zwischen; und das Assembly-Tag verursacht ein unkompilierbares Projekt. –