初めまして。現在Windowsアプリの勉強中です。
こちらのサイトを初めて使うため、質問の仕方がおかしかったり不足している情報があれば教えてください。
前提・実現したいこと
ボタンを押したときにTreeviewの特定のノードを選択状態にしたいです。
しかし現在以下の2つがわかりません。
発生している問題・エラーメッセージ
1.SelectNodeで選択したいノードを選択したつもりなのにAfterSelectのイベントが動かない
Treeviewに表示されているノードをクリックすると、コンソールにそのテキストを返すプログラムです。
これをマウスでノードをクリックするのではなく、ボタンを押したときに任意のノードを選択状態(クリックしたのと同じ)にしたいです。
自分の想定ではTopNodeを指定したので、aaaaと表示されるかと思ったのですが表示されず、デバッグで止めてみてもtreeView1_AfterSelectに入っていないようでした。
どのように記述すればtreeView1_AfterSelectを動かせるのでしょうか?
該当のソースコード
private void Form3_Load(object sender, EventArgs e) { treeView1.Nodes.Add("aaaa"); treeView1.Nodes.Add("bbbb"); } private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) { Console.WriteLine(e.Node.Text); } private void button1_Click(object sender, EventArgs e) { TreeNode node = treeView1.TopNode; treeView1.SelectedNode = node; }
発生している問題・エラーメッセージ
2.TopNode以外の指定の仕方がわからない
本来ならば「aaaaボタン」を押したらTreeviewのaaaaが選択状態になってコンソールにaaaaと表示、「bbbbボタン」を押したらTreeviewのbbbbが選択状態になってコンソールにbbbbと表示される
としたいのですが、選択したいノードをNode.Textで指定する方法が調べてもわかりませんでした。(TopNodeの指定もうまくはいっていませんが)
すみませんが、何か良い方法があれば教えていただきたいです。
補足情報(FW/ツールのバージョンなど)
WindowsForm
回答1件
あなたの回答
tips
プレビュー