- - PR -
ASP.NET ツリービューコントロールについて
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-01-16 11:19
いつもお世話になっております。
返信遅くなり申し訳ございませんでした。 ASP.NET:バージョン 1.1 TreeView コントロールは Internet Explorer WebBrowser コントロール郡です。
| ||||||||
|
投稿日時: 2006-01-16 19:04
MONSTさん、こんばんは。
という事は、最大で 8 ^ 6 = 262144 ノード、ってことですよね。 いや、実際にはそんなには無いと思いますが、最下層までのノードを、最初に全て取得しているんですよね? そうすると最大で 8 ^ 5 = 32768 回、再帰的な子ノードの読込が初期化処理で発生する可能性もあったりして、それは結構、重いんじゃないかと思います。 当該コントロールは使った事ありませんが、初期状態では最上層のノードだけを取得しておいて、展開イベントで子ノードを取得 / 折りたたみでクリアすれば、動きが軽くなるのではないでしょうか。 ページサイズがそれだけあるという事は、TreeView を表現するための HTML だけでなく、ViewState に保持されるデータもちょっと凄い事になっているような気がします。 | ||||||||
|
投稿日時: 2006-01-16 21:27
それは最初に「試みた」という書き込みがあったかと思います。 ただ、PostBack 云々の問題で〜 という展開だったと思うのですが... (^^;) 実装自体は Expand イベントあたりで、できるハズですけどね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-01-17 09:32
じゃんぬねっとさん、お早うございます。
あ、「大量データをツリー表示する場合」にどうするか? という質問だと思ったので、 「そのやり方で良いんじゃない?」 というのが前回の投稿の主旨でした。 展開/縮小の度にポストバックするのはイヤだけど、そうするとサイズが大きくて(初期化処理が重くなっている可能性も)「開くのに時間がかかる」、という事ですよね?>MONSTさん あとは、試した事ありませんけど、AJAX という手もアリかも知れませんね。 ただ、子ノードを取得する際にサーバのレスポンスが悪かったりすると、IE 自体が無応答になるような気がしますが、どうなんでしょう? | ||||||||
|
投稿日時: 2006-01-17 10:44
面白そうですね。 DHTML Tree View of Arbitrary Depth using AJAX http://www.codeproject.com/aspnet/ajax_treeview.asp | ||||||||
|
投稿日時: 2006-01-19 09:40
ツリーに表示するデータが増加した為、どうしようか?ということで 展開時にExpandイベントで下層の情報を取得し表示するといる方法にたどりつきました。 ただツリー以外の部分も結構重く、展開時にポストバックするのもレスポンスが悪い為 ポストバックさせたくないというのが現状です。 | ||||||||
|
投稿日時: 2006-01-19 09:48
おはようございます。 早速拝見させて頂きました。 サンプルソースをダウンロードしようと思ったのですが メンバー登録が必要みたいで・・・ メールアドレスを入力してサインアップしても問題ありませんでしょうか? |