TreeNodeBinding.PopulateOnDemand プロパティとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > TreeNodeBinding.PopulateOnDemand プロパティの意味・解説 

TreeNodeBinding.PopulateOnDemand プロパティ

メモ : このプロパティは、.NET Framework version 2.0 で新しく追加されたものです。

TreeNodeBinding オブジェクトが適用されるノードに動的にデータを設定するかどうかを示す値を取得または設定します。

名前空間: System.Web.UI.WebControls
アセンブリ: System.Web (system.web.dll 内)
構文構文

Public Property PopulateOnDemand As
 Boolean
Dim instance As TreeNodeBinding
Dim value As Boolean

value = instance.PopulateOnDemand

instance.PopulateOnDemand = value
public bool PopulateOnDemand { get;
 set; }
public:
property bool PopulateOnDemand {
    bool get ();
    void set (bool value);
}
/** @property */
public boolean get_PopulateOnDemand ()

/** @property */
public void set_PopulateOnDemand (boolean value)
public function get PopulateOnDemand
 () : boolean

public function set PopulateOnDemand
 (value : boolean)

プロパティ値
TreeNodeBinding オブジェクトが適用されるノードに動的にデータを設定する場合は true。それ以外の場合は false。既定値は false です。

解説解説

データのサイズやカスタム コンテンツがユーザーの入力に依存する場合もあるため、ツリー構造をあらかじめ静的に定義するのは現実的ではありません。このため、TreeView コントロールはノードへの動的なデータ設定をサポートしています。PopulateOnDemand プロパティを true に設定すると、TreeNodeBinding オブジェクトが適用されるノードの子ノードは、実行時にノードが展開された時点でデータが設定されます。

TreeView コントロールの AutoGenerateDataBindings を true に設定してデータ バインディングを作成した場合、作成されるバインディングの PopulateOnDemand プロパティは true に設定されます。宣言によって作成されるデータ バインディングの PopulateOnDemand プロパティは、false に設定されます。宣言構文を使用すると、個々のデータ バインディングの動作を制御できます。

メモメモ

TreeNode クラスの PopulateOnDemand プロパティとは異なり、PopulateOnDemand プロパティでは、XmlDataSource などのデータ ソース コントロールを使用する場合、TreeNodePopulate イベントに対してイベント処理メソッドを定義する必要はありません。代わりに、TreeView コントロールは、DataBindings コレクション内の TreeNodeBinding オブジェクトのプロパティを使用して、イベント処理メソッドを動的に生成します。TreeNodePopulate イベントのイベント処理メソッドを定義することもできますが、このメソッドは TreeView コントロールのイベント処理メソッドの後に呼び出されます。

サポートしているブラウザでは、クライアント側のノードへのデータ設定も利用できます。この機能を有効にすると、TreeView コントロールによって、クライアント上のノードが展開された時点でそのノードに動的にデータが設定され、サーバーへのポストバックが不要になります。クライアント側のノードへのデータ設定の詳細については、「PopulateNodesFromClient」を参照してください。

このプロパティの値はビューステートに格納されます。

使用例使用例

このセクションには、2 つのコード例が含まれています。ShowCheckBox プロパティを使用して、ノードにチェック ボックスを表示するかどうかを指定する方法を最初のコード例に示します。最初のコード例に対応したサンプル XML データを 2 番目のコード例に示します。

ShowCheckBox プロパティを使用して、ノードにチェック ボックスを表示するかどうかを指定する方法を次の例に示します。この例を正常に動作させるには、このコード例の後に示すサンプル XML データを、Book.xml という名前のファイルにコピーする必要があります。

<%@ Page Language="VB" %>

<script runat="server">

  Sub Page_Load(ByVal sender As
 Object, ByVal e As EventArgs)

    ' Create a TreeNodeBinding object and set its 
    ' properties.
    Dim binding As TreeNodeBinding = New
 TreeNodeBinding
    binding.DataMember = "Section"
    binding.Depth = 2
    binding.TextField = "Heading"

    ' Set the PopulateOnDemand property of the
    ' TreeNodeBinding object programmatically.
    binding.PopulateOnDemand = False

    ' Add the TreeNodeBinding object to the DataBindings
    ' collection of the TreeView control.
    BookTreeView.DataBindings.Add(binding)

  End Sub

</script>

<html>
  <body>
    <form runat="server">
    
      <h3>TreeNodeBinding PopulateOnDemand Example</h3>
    
      <asp:TreeView id="BookTreeView" 
        DataSourceID="BookXmlDataSource"
        InitialExpandDepth="2"  
        runat="server">
         
        <DataBindings>
          <asp:TreeNodeBinding DataMember="Book"
 
            TextField="Title"/>
          <asp:TreeNodeBinding DataMember="Chapter"
 
            TextField="Heading"
            PopulateOnDemand="False"/>
          <asp:TreeNodeBinding DataMember="Section"
 
            TextField="Heading"/>
        </DataBindings>
         
      </asp:TreeView>
      
      <asp:XmlDataSource id="BookXmlDataSource"
  
        DataFile="Book.xml"
        runat="server">
      </asp:XmlDataSource>
    
    </form>
  </body>
</html>

<%@ Page Language="C#" %>

<script runat="server">

  void Page_Load(Object sender, EventArgs e)
  {

    // Create a TreeNodeBinding object and set its 
    // properties.
    TreeNodeBinding binding = new TreeNodeBinding();
    binding.DataMember = "Section";
    binding.Depth = 2;
    binding.TextField = "Heading";

    // Set the PopulateOnDemand property of the
    // TreeNodeBinding object programmatically.
    binding.PopulateOnDemand = false;

    // Add the TreeNodeBinding object to the DataBindings
    // collection of the TreeView control.
    BookTreeView.DataBindings.Add(binding);

  }

</script>

<html>
  <body>
    <form runat="server">
    
      <h3>TreeNodeBinding PopulateOnDemand Example</h3>
    
      <asp:TreeView id="BookTreeView" 
        DataSourceID="BookXmlDataSource"
        InitialExpandDepth="2"  
        runat="server">
         
        <DataBindings>
          <asp:TreeNodeBinding DataMember="Book" 
            TextField="Title"/>
          <asp:TreeNodeBinding DataMember="Chapter" 
            TextField="Heading"
            PopulateOnDemand="False"/>
          <asp:TreeNodeBinding DataMember="Section" 
            TextField="Heading"/>
        </DataBindings>
         
      </asp:TreeView>
      
      <asp:XmlDataSource id="BookXmlDataSource"  
        DataFile="Book.xml"
        runat="server">
      </asp:XmlDataSource>
    
    </form>
  </body>
</html>

前のコード例に対応したサンプル XML データを次のコード例に示します。

<Book Title="Book Title">
    <Chapter Heading="Chapter 1">
        <Section Heading="Section 1">
        </Section>
        <Section Heading="Section 2">
        </Section>
    </Chapter>
    <Chapter Heading="Chapter 2">
        <Section Heading="Section 1">
        </Section>
    </Chapter>
    <Appendix Heading="Appendix A">
    </Appendix>
</Book>
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
TreeNodeBinding クラス
TreeNodeBinding メンバ
System.Web.UI.WebControls 名前空間
TreeView
TreeNode クラス
DataBindings
TreeNode.PopulateOnDemand プロパティ
PopulateNodesFromClient
TreeNodePopulate



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

TreeNodeBinding.PopulateOnDemand プロパティのお隣キーワード

   

英語⇒日本語
日本語⇒英語
   



TreeNodeBinding.PopulateOnDemand プロパティのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS