0

このツリービューには RadTreeView と多くのノードがあります。私がやりたいことは、ノードがクリックされたときに、一番上の親ノードを取得したいということです。これどうやってするの?構造は次のようになります。



    1. 3.子の子
      4.選択したノード
      3.子の子
      3.子の子

「4.選択したノード」を選択すると、メソッドを3回呼び出すのではなく、最上位の親ノードを取得できるようにしたい。

4

3 に答える 3

0

私は現在、Rad Controls を使用して巨大なプロジェクトに取り組んでいるため、このメソッドを作成しました。

public void FindFather(RadTreeNode n)
        {

            foreach (RadTreeNode node in RadTreeView1.GetAllNodes())
            {
                if (node.Level == 0 && !node.GetAllNodes().Contains(node))
                {
                    //this is the node that your looking for 
                    //do something with it
                    Console.Write("this is the Top Parent");
                }
            }


         }

コーディングをあきらめないでください。

于 2012-09-28T17:08:35.917 に答える
0
private void radTreeView_SelectionChanged( object sender, Telerik.Windows.Controls.SelectionChangedEventArgs e )
{
   // Get a reference to the treeview
   Telerik.Windows.Controls.RadTreeView treeView = sender as Telerik.Windows.Controls.RadTreeView;
   // Get the currently selected items
   ObservableCollection<Object> selectedItems = treeView.SelectedItems;
   RadTreeViewItem item = selectedItems[ 0 ] as RadTreeViewItem;
   // Get the previous item and the previous sibling item
   RadTreeViewItem previousItem = item.PreviousItem;
   RadTreeViewItem previousSiblingItem = item.PreviousSiblingItem;

   // Get the next item and the next sibling item
   RadTreeViewItem nextItem = item.NextItem;
   RadTreeViewItem nextSiblingItem = item.NextSiblingItem;

   // Get the parent item and the root item
   RadTreeViewItem parentItem = item.ParentItem;
   RadTreeViewItem rootItem = item.RootItem;
}

主に、このイベント全体の最後の行が必要だと思います。これに関する詳細については、こちらを参照してください。ただし、これは radtreeview の WPF バージョン用です。

于 2010-12-30T12:56:36.540 に答える