Basic Library for UWP/WinRT XAML
オンデマンドの読み込み
全て展開全て展開
すべて折りたたむすべて折りたたむ

アプリケーションの起動時に各ノードをすべて生成するのではなく、ユーザーがノードを展開すると、オンデマンドでノードにデータが挿入される遅延ロードという技術を使用することができます。これにより、アプリケーションの読み込み速度が向上し、リソースを効率よく使用できます。

ノードの遅延ロードを実装するには、次のコードを使用します。

Visual Basic コードの書き方

C# コードの書き方

この実装は、ユーザーがノードを展開しようとしたときに、ノードにデータを挿入できるように、Expanding イベントのイベントハンドラを登録します。Tag プロパティには、ノードにデータを挿入するために必要な情報を保存します。最後に、ユーザーがこのノードを展開して、ノードにデータを挿入する Expanding イベントをトリガできるように、ダミーの子ノードを追加します。

Tag プロパティを使用する代わりに、C1TreeViewItem からカスタムクラスを継承し、そのクラスにすべての遅延ロードロジックを組み込むこともできるはずです。その方が洗練された方法ですが、WinRT XAML ではテンプレートの継承がサポートされていません。テンプレートを持つクラス(Button、C1TreeViewItem など)からクラスを継承しても、テンプレートは継承されないため、テンプレートを各自で提供する必要があります。そうしないと、その派生クラスは単に空のコントロールになります。

関連トピック

 

 


Copyright © GrapeCity inc. All rights reserved.