如何模拟按f2使树视图节点可编辑

时间:2013-03-25 09:20:53

标签: c# winforms telerik

我正在使用来自Telerik Q3 2010的radtreeview控件来获取winForms并且我想要执行以下操作,添加新节点时应该在编辑模式下添加,这在telerik 2010中不受支持所以我需要模拟按F2键使节点可编辑。 我找到了关于同一主题的这个帖子:How to simulate pressing F2 button with keyboard focus on treeview in wpf?,但我需要在Winform而不是WPF中这样做,你能帮助我吗?

修改 我使用sendKeys方法+ tree.BeginEdit但它没有用完! 这是我的代码:

  private void radButton6_Click(object sender, EventArgs e)
        {
            RadTreeNode newNode = new RadTreeNode();
            newNode.Text = "new Cabinet";
            newNode.Tag = "new Cabinet";
            cabinetsTree.Nodes.Add(newNode);
            cabinetsTree.SelectedNode = cabinetsTree.Nodes[cabinetsTree.Nodes.Count-1];
            cabinetsTree.ScrollToBottom(); //To set the focus on the new added node
            cabinetsTree.Focus();
            cabinetsTree.AllowEdit = true;
            SendKeys.Send("{F2}");
            cabinetsTree.BeginEdit();
        }

3 个答案:

答案 0 :(得分:1)

节点应该有BeginEdit()方法,允许用户重命名节点。基于documentation

  

使用BeginEdit()方法启动对所选节点的编辑

答案 1 :(得分:1)

您应首先允许在控件中编辑节点,然后使用节点的BeginEdit方法:

public partial class Form1 : Form
{
    RadTreeView tree = new RadTreeView();

    public Form1()
    {
        InitializeComponent();

        this.Controls.Add(tree);
        tree.Size = new Size(500, 500);
        tree.AllowEdit = true;

    }

    private void button1_Click(object sender, EventArgs e)
    {
        RadTreeNode newNode = new RadTreeNode();
        newNode.Text = "new Cabinet";
        tree.Nodes.Add(newNode);
        newNode.BeginEdit();
    }
}

答案 2 :(得分:0)

您可以通过捕获键盘上的按键事件并在每次按下f2键时将editmode设置为true来解决此问题。