# C1.WinUI.Core.C1HierarchicalPresenter

## Content

<div class="doc-site-dotnet-api-container">



  <h1 id="C1_WinUI_Core_C1HierarchicalPresenter" data-uid="C1.WinUI.Core.C1HierarchicalPresenter" class="text-break">C1HierarchicalPresenter Class
</h1>
  <div class="markdown level0 summary"><p>Represents a control that can be used to present a hierarchical collection of items.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
    <div class="level1"><a class="xref" href="C1.WinUI.Core.C1ItemsControl.html">C1ItemsControl</a></div>
    <div class="level2"><span class="xref">C1HierarchicalPresenter</span></div>
  </div>
  <div class="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.idisposable">IDisposable</a></div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="C1.WinUI.Core.html">C1.WinUI.Core</a></h6>
  <h6><strong>Assembly</strong>: C1.WinUI.Core.dll</h6>
  <h5 id="C1_WinUI_Core_C1HierarchicalPresenter_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class C1HierarchicalPresenter : C1ItemsControl, IDisposable</code></pre>
  </div>
  <div class="codewrapper">
    <pre><code class="lang-vbnet hljs">Public Class C1HierarchicalPresenter
    Inherits C1ItemsControl
    Implements IDisposable</code></pre>
  </div>
  <h3 id="constructors">Constructors
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter__ctor" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.#ctor">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.-ctor.html#C1_WinUI_Core_C1HierarchicalPresenter__ctor">C1HierarchicalPresenter()</a>
        </td>
        <td class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.html">C1HierarchicalPresenter</a> class.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="fields">Fields
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_HeaderProperty" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.HeaderProperty">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.HeaderProperty.html">HeaderProperty</a>
        </td>
        <td class="markdown level1 summary"><p>Identifies the <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.Header.html#C1_WinUI_Core_C1HierarchicalPresenter_Header">Header</a> dependency property.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_HeaderTemplateProperty" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.HeaderTemplateProperty">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.HeaderTemplateProperty.html">HeaderTemplateProperty</a>
        </td>
        <td class="markdown level1 summary"><p>Identifies the <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.HeaderTemplate.html#C1_WinUI_Core_C1HierarchicalPresenter_HeaderTemplate">HeaderTemplate</a> dependency property.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="properties">Properties
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_Header" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.Header">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.Header.html#C1_WinUI_Core_C1HierarchicalPresenter_Header">Header</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the item that labels the control.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_HeaderTemplate" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.HeaderTemplate">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.HeaderTemplate.html#C1_WinUI_Core_C1HierarchicalPresenter_HeaderTemplate">HeaderTemplate</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the template used to display the contents of the control's header.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_IsFocused" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.IsFocused">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.IsFocused.html#C1_WinUI_Core_C1HierarchicalPresenter_IsFocused">IsFocused</a>
        </td>
        <td class="markdown level1 summary"><p>Gets whether the control is focused.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_IsMouseOver" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.IsMouseOver">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.IsMouseOver.html#C1_WinUI_Core_C1HierarchicalPresenter_IsMouseOver">IsMouseOver</a>
        </td>
        <td class="markdown level1 summary"><p>Gets whether the mouse is over the control.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_ItemConverter" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.ItemConverter">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.ItemConverter.html#C1_WinUI_Core_C1HierarchicalPresenter_ItemConverter">ItemConverter</a>
        </td>
        <td class="markdown level1 summary"><p>The ItemConverter performs the conversion from a <span class="xref">C1HierarchicalPresenter</span> instance to its String
representation.
If not set by the user, the default converter will be used.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_ParentCollection" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.ParentCollection">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.ParentCollection.html#C1_WinUI_Core_C1HierarchicalPresenter_ParentCollection">ParentCollection</a>
        </td>
        <td class="markdown level1 summary"><p>Gets the items collection of this element's parent.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_ParentItemsSource" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.ParentItemsSource">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.ParentItemsSource.html#C1_WinUI_Core_C1HierarchicalPresenter_ParentItemsSource">ParentItemsSource</a>
        </td>
        <td class="markdown level1 summary"><p>Returns this element's parent ItemsSource Property.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_ChangeVisualStateCommon_System_Boolean_" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.ChangeVisualStateCommon(System.Boolean)">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.ChangeVisualStateCommon.html#C1_WinUI_Core_C1HierarchicalPresenter_ChangeVisualStateCommon_System_Boolean_">ChangeVisualStateCommon(bool)</a>
        </td>
        <td class="markdown level1 summary"><p>Updates the current visual state of the Common visual state group to match the object's properties.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_ClearContainerForItemOverride_Microsoft_UI_Xaml_DependencyObject_System_Object_" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.ClearContainerForItemOverride(Microsoft.UI.Xaml.DependencyObject,System.Object)">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.ClearContainerForItemOverride.html#C1_WinUI_Core_C1HierarchicalPresenter_ClearContainerForItemOverride_Microsoft_UI_Xaml_DependencyObject_System_Object_">ClearContainerForItemOverride(DependencyObject, object)</a>
        </td>
        <td class="markdown level1 summary"></td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_Dispose_System_Boolean_" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.Dispose(System.Boolean)">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.Dispose.html#C1_WinUI_Core_C1HierarchicalPresenter_Dispose_System_Boolean_">Dispose(bool)</a>
        </td>
        <td class="markdown level1 summary"></td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_GetContainerForItemOverride" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.GetContainerForItemOverride">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.GetContainerForItemOverride.html#C1_WinUI_Core_C1HierarchicalPresenter_GetContainerForItemOverride">GetContainerForItemOverride()</a>
        </td>
        <td class="markdown level1 summary"></td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_InitializeItem_C1_WinUI_Core_C1HierarchicalPresenter_" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.InitializeItem(C1.WinUI.Core.C1HierarchicalPresenter)">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.InitializeItem.html#C1_WinUI_Core_C1HierarchicalPresenter_InitializeItem_C1_WinUI_Core_C1HierarchicalPresenter_">InitializeItem(C1HierarchicalPresenter)</a>
        </td>
        <td class="markdown level1 summary"><p>Initializes a <span class="xref">C1HierarchicalPresenter</span> by setting its parent and root elements
in the hierarchy.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_IsAncestorOf_C1_WinUI_Core_C1HierarchicalPresenter_" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.IsAncestorOf(C1.WinUI.Core.C1HierarchicalPresenter)">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.IsAncestorOf.html#C1_WinUI_Core_C1HierarchicalPresenter_IsAncestorOf_C1_WinUI_Core_C1HierarchicalPresenter_">IsAncestorOf(C1HierarchicalPresenter)</a>
        </td>
        <td class="markdown level1 summary"><p>Determines whether the <span class="xref">C1HierarchicalPresenter</span> is an ancestor of the descendant element.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_IsItemItsOwnContainerOverride_System_Object_" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.IsItemItsOwnContainerOverride(System.Object)">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.IsItemItsOwnContainerOverride.html#C1_WinUI_Core_C1HierarchicalPresenter_IsItemItsOwnContainerOverride_System_Object_">IsItemItsOwnContainerOverride(object)</a>
        </td>
        <td class="markdown level1 summary"></td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_OnApplyTemplate" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.OnApplyTemplate">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.OnApplyTemplate.html#C1_WinUI_Core_C1HierarchicalPresenter_OnApplyTemplate">OnApplyTemplate()</a>
        </td>
        <td class="markdown level1 summary"></td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_OnHeaderChanged" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.OnHeaderChanged">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.OnHeaderChanged.html#C1_WinUI_Core_C1HierarchicalPresenter_OnHeaderChanged">OnHeaderChanged()</a>
        </td>
        <td class="markdown level1 summary"><p>Called when the value of the <span class="xref">Header</span> property changes.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_OnItemCleared_C1_WinUI_Core_ItemPreparedEventArgs_" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.OnItemCleared(C1.WinUI.Core.ItemPreparedEventArgs)">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.OnItemCleared.html#C1_WinUI_Core_C1HierarchicalPresenter_OnItemCleared_C1_WinUI_Core_ItemPreparedEventArgs_">OnItemCleared(ItemPreparedEventArgs)</a>
        </td>
        <td class="markdown level1 summary"><p>Raises the <span class="xref">C1HierarchicalPresenter.ItemCleared</span> event.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_OnItemPrepared_C1_WinUI_Core_ItemPreparedEventArgs_" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.OnItemPrepared(C1.WinUI.Core.ItemPreparedEventArgs)">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.OnItemPrepared.html#C1_WinUI_Core_C1HierarchicalPresenter_OnItemPrepared_C1_WinUI_Core_ItemPreparedEventArgs_">OnItemPrepared(ItemPreparedEventArgs)</a>
        </td>
        <td class="markdown level1 summary"><p>Raises the <span class="xref">C1HierarchicalPresenter.ItemPrepared</span> event.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_PrepareContainerForItemOverride_Microsoft_UI_Xaml_DependencyObject_System_Object_" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.PrepareContainerForItemOverride(Microsoft.UI.Xaml.DependencyObject,System.Object)">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.PrepareContainerForItemOverride.html#C1_WinUI_Core_C1HierarchicalPresenter_PrepareContainerForItemOverride_Microsoft_UI_Xaml_DependencyObject_System_Object_">PrepareContainerForItemOverride(DependencyObject, object)</a>
        </td>
        <td class="markdown level1 summary"></td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_ToList__1" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.ToList``1">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.ToList.html#C1_WinUI_Core_C1HierarchicalPresenter_ToList__1">ToList&lt;T&gt;()</a>
        </td>
        <td class="markdown level1 summary"><p>Creates a list with all the item containers present in the Hierarchical Presenter at
the moment of invocation.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_ToString" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.ToString">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.ToString.html#C1_WinUI_Core_C1HierarchicalPresenter_ToString">ToString()</a>
        </td>
        <td class="markdown level1 summary"></td>
      </tr>
    </tbody>
  </table>
  <h3 id="events">Events
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_ItemCleared" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.ItemCleared">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.ItemCleared.html">ItemCleared</a>
        </td>
        <td class="markdown level1 summary"><p>Occurs when a C1HierarchicalPresenter child item is cleared.
(ClearContainerForItemOverride was invoked).</p>
</td>
      </tr>
      <tr>
        <td id="C1_WinUI_Core_C1HierarchicalPresenter_ItemPrepared" data-uid="C1.WinUI.Core.C1HierarchicalPresenter.ItemPrepared">
          <a class="xref" href="C1.WinUI.Core.C1HierarchicalPresenter.ItemPrepared.html">ItemPrepared</a>
        </td>
        <td class="markdown level1 summary"><p>Occurs when a C1HierarchicalPresenter child item is prepared
(PrepareContainerForItemOverride was invoked).</p>
</td>
      </tr>
    </tbody>
  </table>

</div>
