2017-10-05 3 views
0

radtreeviewで前のノードに移動する方法を教えてください。私はtelerikを使用しています。 は、ここに私のロード魔女がradtreeviewを表示次のとおりです。バックスペースを使用して前のフォルダに移動する

public void LoadDataMyComputer() 
{ 
    try 
    { 
     RadTreeNode rootNode = radTreeView1.Nodes.Add("C:\\work_Bogdan"); 
     rootNode.Tag = "C:\\work_Bogdan"; 
     Stopwatch watch = Stopwatch.StartNew(); 
     LoadFoldersTree(rootNode); 


     watch.Stop(); 
     ParamLoadingTime = (watch.ElapsedMilliseconds/1000.0); 
    } 
    catch (Exception ex) 
    { 
     MessageBox.Show(ex.Message); 
    } 
} 

ここで私は、前のフォルダに移動するコードを記述する必要が私のpressKeyイベントです:

private void radTreeView1_KeyPress(object sender, KeyPressEventArgs e) 
{ 
    if (e.KeyChar == (char)Keys.Back) 
    { 
     // here have to be the code to move to prev. folder 
     MessageBox.Show("asd"); 
    } 
} 

任意の答えは便利ですが。事前に

答えて

0

私はノードのリストを作成しました。

私はバックスペースキーを押したときに、それは前のノード(m_History [m_History.Count - 1]前のノードである)と私のフォームをロードし

とコードは次のようになります。

private void radTreeView1_KeyPress(object sender, KeyPressEventArgs e) 
    { 
     //if backspace is pressed go to previous node 
     if (e.KeyChar == (char)Keys.Back) 
     { 
      if (m_History.Count == 0) 
       return; 

      RadTreeNode nNode = m_History[m_History.Count - 1]; 
      //Load with the m_History[m_History.Count - 1] node from the list(m_History) 
      LoadTree(nNode); 

      //remove the last node 
      m_History.Remove(nNode); 
     } 
    } 
関連する問題