ツリーコントロールにデータを入力するためにWebサービスにクエリを実行するSilverlightアプリを作成しています。各要素には少なくとも2つのレベルの子があるため、次のようになります。
a
+-b
+-c
d
+-g
+-h
e
+-i
+-j
f
+-k
+-l
WebサービスAPIは、一度に1レベルの子ノードしか取得できないようになっているため、最初の旅行でa、d、e、fを取得できます。b、g、i、kを取得するには、4回の旅行が必要です。同様に、c、h、j、lを取得するには、さらに4回移動する必要があります。(このサービスでは、実際には1回の旅行ですべてのノードを取得できますが、親子関係は提供されません:-()
私の質問はこれです:ツリービューのすべてのノードを取得する間、ユーザーを前もってしばらく待たせる必要がありますか、それとも上位のいくつかのノードを取得し、他のノードをオンデマンドまたはバックグラウンドで取得する必要がありますタスク?また、ノードは非同期で変更される可能性があるため、すべてのノードを前もって取得する場合は、ツリービューの「更新」ボタンが必要になります。オンデマンドで行う場合は、キャッシュ戦略が必要になります。
ユーザーに最適なのはどれですか?