nach einer wenig Recherche fand ich heraus, dass wir nicht generische Typen in der Seite, wie diese verwenden:Wie machen die Seite UWP generic
public class MyPage<T> : Page where T : class
Der Grund dafür ist, dass wir nicht sagen können die XAML-Datei der Seite, was ist das T (korrigieren Sie mich, wenn ich falsch liege). sah ich eine mögliche Lösung im Internet, wo es so etwas wie dies geschieht:
//this page has only cs file
public class MyPage<T> : Page where T : class
{
}
//this page again is constructed only from cs file
public class BasePage : MyPage<ViewModel>
{
}
//at last we have a page with xaml file that can be shown
public class MainPage : BasePage
{
}
Wie Sie dieser Code sieht seltsam sehen variieren und ich diese Lösung nicht mag.
Also kann jemand eine gute Lösung für dieses Problem Zweck? Vielleicht mit einem Beispiel.
Was möchten Sie damit erreichen? Hast du ein Beispiel? – Domysee
Zumindest müssten Sie die Klasse "internal" machen, da WinRT offene Genetik nicht unterstützt. Funktioniert 'typeof (Seite) nicht? –
Das Ziel ist, wenn eine neue Seite erstellt wird, wird die Seite einige grundlegende Implementierung haben, die von der BasePage verwendet werden kann und mit dem ViewModel, das als generischer Typ, z. wenn ich Methode in der Basepage 'public void DoSomething (T Ansichtsmodell) haben;' wenn ich diese Methode in der Seite verwenden, muss ich diese 'public void DoSomething (MyViewModel Ansichtsmodell) { // ein paar coole Sachen } 'und ich werde die Art von Objekt, die ich erwarte, ohne die Notwendigkeit einer Besetzung bekommen. – Stoian