■26472 / inTopicNo.3) |
Re[1]: VBのノード表示について |
□投稿者/ よねKEN (14回)-(2008/10/10(Fri) 01:16:39)
|
■No26465 (haytin さん) に返信 > バージョンは2005以降です。 > > フォーム上にノード展開された表示を、あるボタンひとつでノードを閉じたいんですが、 > どうすればいいでしょうか。 できればノードレベルを指定したいのですが、よろしく > お願い致します。
開発しているのはWindowsアプリですか?Webアプリですか? ここでいうノードとはどのコントロールのことですか?
あることを実現するのはどうすればいいか?を考えるときは、 まずMSDNライブラリでそのクラスの持つ機能(主にプロパティ、メソッド)を調べるのが先決ですが、 調べてみましたか?もし調べていないなら、そこから始めてください。
-- 「フォーム上」という表現からおそらくはWindowsアプリだろうと思います。 またノードと言われてぱっと出てくるのはTreeViewだと思いますので、以降、その仮定での話です。
その場合は以下を調べましょう。
TreeNodeメンバ http://msdn.microsoft.com/ja-jp/library/system.windows.forms.treenode_members(VS.80).aspx
TreeViewメンバ http://msdn.microsoft.com/ja-jp/library/system.windows.forms.treeview_members(VS.80).aspx
あるTreeNodeを閉じるにはCollapseメソッドを使えばよいことがわかると思います。 ついでに、開くにはExpandメソッド/ExpandAllメソッドを使えばよいこともわかると思います。
後はあるノードをどう特定するか?ということも必要になってくるでしょう。 例えば、今選択されているノードであれば、これはTreeView.SelectedNodeプロパティを使うことになります。 あるノードが何階層目のノードであるかを判断するにはTreeNode.Levelプロパティが使用できます。
TreeViewに属するTreeNodeをすべて列挙するには、TreeView.NodesプロパティでTreeView直下の TreeNodeを列挙し、列挙したそれぞれのTreeNode.Nodesプロパティでその子を列挙する。 さらに孫のTreeNode.Nodesプロパティで・・・というように再帰的にノードを列挙することで、 すべてのノードを列挙することができますので、そこから操作したいノードを探すということも必要でしょう。
|
|