Wie kann ein benutzerdefinierter Typ durch XAML geladen einen Verweis auf das Wurzelobjekt erhalten

StackOverflow https://stackoverflow.com/questions/758482

  •  09-09-2019
  •  | 
  •  

Frage

Ich versuche, XAML zu verwenden, um eine grafische Darstellung der benutzerdefinierten Typen darstellen und zu laden, die ein semantisches Modell für einen Business-Bereich.

Eine Sache, Ich mag würde tun, ist in der Lage sein, einen Verweis auf das „Stammobjekt“ des Graphen von einem Objekt zu erhalten, tiefer in dem Baum. Ich kann keine einfache Möglichkeit, dies zu tun, andere finden, als zu barbarischen Praktiken zurückzugreifen das Wurzelobjekt als Singleton dergleichen.

Irgendwelche Ideen?

War es hilfreich?

Lösung

Ich weiß nicht, dass dies ein Problem einzigartig in XAML. Alle XAML tun ist Ihre „Kind“ Objekte instanziieren und sie zu einer Sammelstelle Eigenschaft auf dem „Eltern“ Objekt hinzufügen. Also, wenn Sie hatte so etwas wie:

<my:Category Name="Products">
    <my:Category.Subcategories>
        <my:Category Name="Clothing" />
        <my:Category Name="Jewellery" />
    </my:Category.Subcategories>
</my:Category>

... dann werden Sie mit einer „Produkten“ Kategorie mit zwei Unterkategorien enden. Es wäre an Ihnen, Ihre „Kategorie“ Klasse so codieren, bis die eine Unterkategorie Hinzufügen speichert einen Verweis auf den „Besitzer“ dieser Subkategorie irgendwo. Ich würde wahrscheinlich eine benutzerdefinierte Sammlung Typ (außer Kraft setzen Hinzufügen und Methoden entfernen, damit sie die „Parent“ oder „Besitzer“ Eigenschaft auf dem Objekt hinzugefügt eingestellt) verwendet werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top