1

我正在尝试使用 XAML 来表示和加载形成业务域语义模型的自定义类型图。

我想做的一件事是能够从树中更深的对象获取对图的“根对象”的引用。除了诉诸野蛮做法(例如将根对象作为单例)之外,我找不到任何直接的方法来做到这一点。

有任何想法吗?

4

1 回答 1

1

我不知道这是 XAML 独有的问题。XAML 所做的只是实例化您的“子”对象并将它们添加到“父”对象的集合属性中。所以如果你有类似的东西:

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

...那么您最终会得到一个包含两个子类别的“产品”类别。由您来编写“类别”类的代码,以便添加子类别在某处保存对该子类别的“所有者”的引用。我可能会使用自定义集合类型(覆盖 Add 和 Remove 方法,以便它们在要添加的对象上设置“Parent”或“Owner”属性)。

于 2009-04-16T23:52:01.183 回答