DOBON.NETプログラミング掲示板過去ログ
TreeViewでのデータの追加の仕方
題名: TreeViewでのデータの追加の仕方
著者: あのね
日時: 2005/02/24 14:50:35
ID: 9353
この記事の返信元:
(なし)
この記事への返信:
[9354]
Re[1]: TreeViewでのデータの追加の仕方
じゃんぬねっと
2005/02/24 15:48:25
ツリーを表示
環境/言語:[VB.NET 2003]
分類:[.NET]
こんにちは。今回もお世話になります。あのね です。
現在、WinアプリでTreeViewを使用する開発を行っています。
・TBL_MAIN (プライマリキー:MainCD)
・TBL_SUB (プライマリキー:MainCD,SubCD)
の2つのテーブルから値を持ってきます。
このテーブルは、
『双方の MainCD で関連付けられる。』
『TBL_SUB のレコードは、TBL_MAIN に対して複数存在することがある。』
となっています。
今回は、質問・・というよりも素朴な疑問なのですが、
TreeViewにDataSetやDataTableを渡し、それを直接表示させることは
できないのでしょうか?
DataGrid等のように、[DataSource]プロパティに近いものがあれば、
何百回もループを回すことなく、思うものに近いTreeViewが表示できるのでは・・
と思ったのです。
(この処理が、いつもとても重たくて・・・)
TreeViewクラス・メンバ等で検索をかけてみたのですが、
それらしいものを見つけることができませんでした。
皆様は、1つ1つのノードをどのように追加していますか?
ご意見、お待ちしております。
/* リンク先の質問について(´・ω・`)
長い間風邪で寝込んでいた為、ろくにお返事もできずすみませんでした。
だいぶ前のものになってしまったので、トップの方にあげてしまうのも
気が引けて・・・。
この場を借りて、お礼申し上げます。
ありがとうございました。
http://dobon.net/cgi-bin/vbbbs/cbbs.cgi?mode=al2&namber=8891&rev=&no=0
*/
題名: Re[1]: TreeViewでのデータの追加の仕方
著者: じゃんぬねっと
URL:
http://jeanne.wankuma.com/
日時: 2005/02/24 15:48:25
ID: 9354
この記事の返信元:
[9353]
TreeViewでのデータの追加の仕方
あのね
2005/02/24 14:50:35
この記事への返信:
(なし)
ツリーを表示
2005/02/24(Thu) 16:43:48 編集(投稿者)
こんにちは、じゃんぬねっと です。
■No9353に返信(あのねさんの記事)
> 今回は、質問・・というよりも素朴な疑問なのですが、
> TreeViewにDataSetやDataTableを渡し、それを直接表示させることは
> できないのでしょうか?
できないです、というより役割が逆ですよね。
> 何百回もループを回すことなく、思うものに近いTreeViewが表示できるのでは・・ と思ったのです。
> (この処理が、いつもとても重たくて・・・)
ひとつ思うのですが、重いのは TreeView のせいではなく「何百回」もループを回すことではないのでしょうか?
それが、中であろうと外であろうと、根本的な原因を解決しなければ意味がありません。
もし、自分のソースに原因があると思われるならば、ソースも提示してください。
> 皆様は、1つ1つのノードをどのように追加していますか?
恐らく、親子関係 (この場合はヘッダと明細と言うべきか) があるため、
TreeView を選択したかと思いますが、難しいところですね。
List などでしたら、可視領域だけを一旦読み込んだりすることで軽減できるのですが...
また List への追加に比べて Node への追加は、負荷がかかります。(微々たるものかな)
その辺りを改善されたいのならば、"初めて" 展開した時に子 Node を構築するという手もあります。
どこかに保持しておく仕組みが必要ですので、非常に面倒ですがやる価値はあります。
# 子の数によっては、"初めて" である必要はないかもしれません。
# その辺りは仕様次第のような気がします。
DOBON.NET
|
プログラミング道
|
プログラミング掲示板
分類:[.NET]
こんにちは。今回もお世話になります。あのね です。
現在、WinアプリでTreeViewを使用する開発を行っています。
・TBL_MAIN (プライマリキー:MainCD)
・TBL_SUB (プライマリキー:MainCD,SubCD)
の2つのテーブルから値を持ってきます。
このテーブルは、
『双方の MainCD で関連付けられる。』
『TBL_SUB のレコードは、TBL_MAIN に対して複数存在することがある。』
となっています。
今回は、質問・・というよりも素朴な疑問なのですが、
TreeViewにDataSetやDataTableを渡し、それを直接表示させることは
できないのでしょうか?
DataGrid等のように、[DataSource]プロパティに近いものがあれば、
何百回もループを回すことなく、思うものに近いTreeViewが表示できるのでは・・
と思ったのです。
(この処理が、いつもとても重たくて・・・)
TreeViewクラス・メンバ等で検索をかけてみたのですが、
それらしいものを見つけることができませんでした。
皆様は、1つ1つのノードをどのように追加していますか?
ご意見、お待ちしております。
/* リンク先の質問について(´・ω・`)
長い間風邪で寝込んでいた為、ろくにお返事もできずすみませんでした。
だいぶ前のものになってしまったので、トップの方にあげてしまうのも
気が引けて・・・。
この場を借りて、お礼申し上げます。
ありがとうございました。
http://dobon.net/cgi-bin/vbbbs/cbbs.cgi?mode=al2&namber=8891&rev=&no=0
*/