C#メモ TreeViewの先頭のTreeNodeを選択状態にしてみる

C#

ツリービューのノードを制御したいときがあったので…大雑把にはこんな感じ。

  1. TreeViewNodeの先頭のオブジェクトを取ってくる
  2. 1のオブジェクトを選択状態にする

んで、サンプルとして用意したFormはこんな感じ。
TreeViewの名前はMainTreeView、Buttonの名前はActionButtonにした。

TreeViewのプロパティはこんな感じで設定した。

  • FullRowSelect…True
  • HideSelection…False
  • Nodes…ノードを3個追加しとく
  • ShowLines…False
  • ShowPlusMinus…False
  • ShowRootLines…False
  • BorderStyle…FixedSingle
  • ItemHight…24

んで、コードはこんな感じ。

/// <summary>
/// ボタンをクリックしたときのイベント
/// </summary>
/// <param name="objSender">イベントを呼んだオブジェクト</param>
/// <param name="objArguments">イベントの引数</param>
private void OnClickActionButton(object objSender, EventArgs objArguments)
{
	// ツリービューの先頭ノードを取得する
	TreeNode objTopNode = MainTreeView.TopNode;
	// 先頭ノードを選択状態に変更する
	MainTreeView.SelectedNode = objTopNode;
	// ボタンをクリックするとボタンにフォーカスがあたってしまうのでツリービューにフォーカスをあて直す
	MainTreeView.Focus();
}

で、起動したすぐはこんな感じ。

とりあえず3番目のノードをクリックしてみて…

ボタンをクリックすると先頭のノードが選択状態になる。

これを応用すりゃ好きなとこを選択状態にできるっぽい。
んまま、メモってことで。