TreeView for ASP.NET WebForms
子ノードの自動チェックを制御する
タスク別ヘルプ > チェックボックスノードの作成および構成 > 子ノードの自動チェックを制御する

C1TreeViewでチェックボックスが利用されている場合、親ノードをクリックすると、そのノードのすべての子ノードが自動的にチェックされます。この動作を防ぐには、C1TreeViewAutoCheckNodes プロパティをFalseに設定することができます。

このチュートリアルでは、1つの親ノードと2つの子ノードを持つ C1TreeView コントロールを作成します。ノードをチェックボックスにし、 AutoCheckNodes プロパティをFalseに設定します。そうすると、子ノードの Checked プロパティ設定がその親ノードの Checked プロパティに依存しなくなります。

次の手順を実行します

  1. [ソース]タブをクリックしてソースビューに切り替えます。
  2. <cc1:C1TreeView>タグの間に次のマークアップを追加します。
    ソースビュー
    コードのコピー
    <Nodes>
         <cc1:C1TreeViewNode runat="server" Text="親ノード">
              <Nodes>
                   <cc1:C1TreeViewNode runat="server" Text="子ノード1">
                   </cc1:C1TreeViewNode>
                   <cc1:C1TreeViewNode runat="server" Text="子ノード2">
                   </cc1:C1TreeViewNode>
              </Nodes>
         </cc1:C1TreeViewNode>
    </Nodes>
  3. このマークアップは、2つの子ノードを持つ親ノードを作成します。
  4. <cc1:C1TreeView> タグの間にShowCheckBoxes="True"を追加してチェックボックスを有効にします。.
  5. [F5]キーを押してプロジェクトを実行します。下記手順で、チェックボックスのデフォルト動作を確認します。
    1. ツリービューの階層を表示するには、ノードを展開します。
    2. 親のチェックボックスをクリックして子ノードが自動的に選択 されていることを確認します。 

    3. プログラムを終了します。
  6. [デザイン]タブをクリックしてデザインビューに切り替えます。
  7. [プロパティ]ウィンドウにて、ドロップダウンリストから C1TreeView1 を選択して、 AutoCheckNodes プロパティをFalse に設定します。
  8. [F5]キーを押してプロジェクトを実行します。下記手順で、ノードが自動チェックに設定されていない場合のチェックボックスの動作を確認します。
    1. ツリービューの階層を表示するには、ノードを展開します。
    2. 親のチェックボックスをチェックして子ノードが自動的に選択されないことを確認します。

ヒント: 子ノード1のみをチェックして子ノード2をチェックしないとチェックボックスに「不定」というマークが表示されますが、 C1TreeView コントロールの AllowTriState  プロパティをFalse に設定して本動作を防ぐことができます。
関連トピック