Silverlight 4.0 Silverlight:确定父树视图项?

Silverlight 4.0 Silverlight:确定父树视图项?,silverlight-4.0,Silverlight 4.0,我有一个TreeViewItem。我想获取此项目的父节点(如果有) 但是,TreeViewItem.ParentTreeViewItem属性是内部的,因此不可访问。 没有理由对开发商隐瞒这一财产,然而,有一个非常聪明的人决定这样做 我该如何进行?是否有任何解决方法(对私人成员的反思在SL中不起作用)?发现了一种丑陋但有效的方法: static TreeViewItem GetParentItem(TreeViewItem item) { for (var i = VisualTreeHelp

我有一个
TreeViewItem
。我想获取此项目的父节点(如果有)

但是,
TreeViewItem.ParentTreeViewItem
属性是内部的,因此不可访问。 没有理由对开发商隐瞒这一财产,然而,有一个非常聪明的人决定这样做


我该如何进行?是否有任何解决方法(对私人成员的反思在SL中不起作用)?

发现了一种丑陋但有效的方法:

static TreeViewItem GetParentItem(TreeViewItem item)
{
  for (var i = VisualTreeHelper.GetParent(item); i != null; i = VisualTreeHelper.GetParent(i))
    if (i is TreeViewItem)
      return (TreeViewItem)i;

  return null;
}
由于隐藏的只读属性,浪费了如此多的CPU周期:(