TreeView Click

C# で TreeView のノードを右クリックすると MessageBox を表示します。

前田稔(Maeda Minoru)の超初心者のプログラム入門

プログラムの説明

  1. TreeView のノードを右クリックすると、登録されている TEXT を MessageBox で表示します。
    空のプロジェクトから TreeView を設定して下さい。
    詳細は TreeView に登録する を参照して下さい。
  2. [デザイン]画面でツリービューを選択して、プロパティウインドウ(右下)のイベント(稲妻アイコン)をクリックします。
    プロパティウインドウの MouseDown をダブルクリックすると treeView1_MouseDown() メソッドが追加されます。
    this.treeView1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.treeView1_MouseDown);
  3. treeView1_MouseDown() メソッドのコードを編集します。
    これでノードを右クリックすると MessageBox が表示されます。
        private void treeView1_MouseDown
            (object sender, System.Windows.Forms.MouseEventArgs e)
        {   if (e.Button == System.Windows.Forms.MouseButtons.Right)
            {
                TreeNode tn = treeView1.GetNodeAt (e.X, e.Y);
                MessageBox.Show (tn.Text + "がクリックされました。");
            }
        }
        
  4. 試しに treeView1_MouseDown() に代えて treeView1_MouseClick() を使ってみました。
    同じようにノードを右クリックすると MessageBox が表示されます。
        private void treeView1_MouseClick(object sender, MouseEventArgs e)
        {   if (e.Button == System.Windows.Forms.MouseButtons.Right)
            {
                TreeNode tn = treeView1.GetNodeAt (e.X, e.Y);
                MessageBox.Show (tn.Text + "がクリックされました。");
            }
        }
        
  5. ノードの左クリックを検出するときは AfterSelect を使います。
    this.treeView1.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView1_AfterSelect);
    クリックされたノードを取得して、その名前を MessageBox で表示します。
        private void treeView1_AfterSelect(object sender, System.Windows.Forms.TreeViewEventArgs e)
        {
            TreeNode selectedNode = e.Node;
            string selected_object = selectedNode.FullPath;
            MessageBox.Show(selected_object + "がクリックされました。");
        }
    

超初心者のプログラム入門(C# Frame Work)