0

私はwinFormsにTelerikQ32010のradtreeviewコントロールを使用していますが、次のことを行いたいと思います。新しいノードを追加すると、編集モードで追加する必要があります。これはTelerik 2010ではサポートされていないため、F2キーを押してシミュレートする必要があります。ノードを編集可能にします。私は同じトピックについてこのスレッドを見つけました:wpfのツリービューでキーボードフォーカスを使用してF2ボタンを押すことをシミュレートする方法は?、しかし、私はWPFではなくWinformでそれを行う必要があります、あなたは私を助けることができますか?

編集 私は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();
        }
4

3 に答える 3

1

ノードBeginEdit()には、ユーザーがノードの名前を変更できるメソッドが必要です。ドキュメントに基づいています。

BeginEdit()メソッドを使用して、選択したノードで編集を開始します

于 2013-03-25T11:34:13.287 に答える
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();
    }
}
于 2013-03-26T07:15:12.070 に答える
0

これは、キーボードのキープレスイベントをキャッチし、f2キーが押されるたびにeditmodeをtrueに設定することで解決できる場合があります。

于 2013-03-25T10:02:28.800 に答える