# C1.WPF.DataFilter.C1FilterEditor

## Content

<div class="doc-site-dotnet-api-container">



  <h1 id="C1_WPF_DataFilter_C1FilterEditor" data-uid="C1.WPF.DataFilter.C1FilterEditor" class="text-break">C1FilterEditor Class
</h1>
  <div class="markdown level0 summary"><p>The <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.html">C1FilterEditor</a> represents a filter as a condition tree.</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="https://learn.microsoft.com/dotnet/api/system.windows.media.visual">Visual</a></div>
    <div class="level2"><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.uielement">UIElement</a></div>
    <div class="level3"><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.frameworkelement">FrameworkElement</a></div>
    <div class="level4"><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.controls.control">Control</a></div>
    <div class="level5"><span class="xref">C1FilterEditor</span></div>
  </div>
  <div class="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.media.animation.ianimatable">IAnimatable</a></div>
    <div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.iframeworkinputelement">IFrameworkInputElement</a></div>
    <div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.iinputelement">IInputElement</a></div>
    <div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.componentmodel.isupportinitialize">ISupportInitialize</a></div>
    <div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.markup.iqueryambient">IQueryAmbient</a></div>
    <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.WPF.DataFilter.html">C1.WPF.DataFilter</a></h6>
  <h6><strong>Assembly</strong>: C1.WPF.DataFilter.dll</h6>
  <h5 id="C1_WPF_DataFilter_C1FilterEditor_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">[TemplatePart(Name = &quot;FilterTree&quot;, Type = typeof(C1TreeView))]
[TemplatePart(Name = &quot;Apply&quot;, Type = typeof(Button))]
[TemplatePart(Name = &quot;Reset&quot;, Type = typeof(Button))]
public class C1FilterEditor : Control, IAnimatable, IFrameworkInputElement, IInputElement, ISupportInitialize, IQueryAmbient, IDisposable</code></pre>
  </div>
  <div class="codewrapper">
    <pre><code class="lang-vbnet hljs">&lt;TemplatePart(Name:=&quot;FilterTree&quot;, Type:=GetType(C1TreeView))&gt;
&lt;TemplatePart(Name:=&quot;Apply&quot;, Type:=GetType(Button))&gt;
&lt;TemplatePart(Name:=&quot;Reset&quot;, Type:=GetType(Button))&gt;
Public Class C1FilterEditor
    Inherits Control
    Implements IAnimatable, IFrameworkInputElement, IInputElement, ISupportInitialize, IQueryAmbient, 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_WPF_DataFilter_C1FilterEditor__ctor" data-uid="C1.WPF.DataFilter.C1FilterEditor.#ctor">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.-ctor.html#C1_WPF_DataFilter_C1FilterEditor__ctor">C1FilterEditor()</a>
        </td>
        <td class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.html">C1FilterEditor</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_WPF_DataFilter_C1FilterEditor_AllowDragDropProperty" data-uid="C1.WPF.DataFilter.C1FilterEditor.AllowDragDropProperty">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.AllowDragDropProperty.html">AllowDragDropProperty</a>
        </td>
        <td class="markdown level1 summary"><p>DependencyProperty for EnableDragDrop</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_ExpressionProperty" data-uid="C1.WPF.DataFilter.C1FilterEditor.ExpressionProperty">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.ExpressionProperty.html">ExpressionProperty</a>
        </td>
        <td class="markdown level1 summary"><p>Expressions DependencyProperty</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_ItemMarginProperty" data-uid="C1.WPF.DataFilter.C1FilterEditor.ItemMarginProperty">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.ItemMarginProperty.html">ItemMarginProperty</a>
        </td>
        <td class="markdown level1 summary"><p>Identifies the <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.ItemMargin.html#C1_WPF_DataFilter_C1FilterEditor_ItemMargin">ItemMargin</a> dependency property.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_PopupStyleProperty" data-uid="C1.WPF.DataFilter.C1FilterEditor.PopupStyleProperty">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.PopupStyleProperty.html">PopupStyleProperty</a>
        </td>
        <td class="markdown level1 summary"><p>Identifies the <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.PopupStyle.html#C1_WPF_DataFilter_C1FilterEditor_PopupStyle">PopupStyle</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_WPF_DataFilter_C1FilterEditor_AllowDragDrop" data-uid="C1.WPF.DataFilter.C1FilterEditor.AllowDragDrop">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.AllowDragDrop.html#C1_WPF_DataFilter_C1FilterEditor_AllowDragDrop">AllowDragDrop</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets a value indicating whether a drag and drop should be enable or not.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_Expression" data-uid="C1.WPF.DataFilter.C1FilterEditor.Expression">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.Expression.html#C1_WPF_DataFilter_C1FilterEditor_Expression">Expression</a>
        </td>
        <td class="markdown level1 summary"><p>Expression uses to built Filter Node</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_IsDisposed" data-uid="C1.WPF.DataFilter.C1FilterEditor.IsDisposed">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.IsDisposed.html#C1_WPF_DataFilter_C1FilterEditor_IsDisposed">IsDisposed</a>
        </td>
        <td class="markdown level1 summary"><p>Gets whether this instance is disposed.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_ItemMargin" data-uid="C1.WPF.DataFilter.C1FilterEditor.ItemMargin">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.ItemMargin.html#C1_WPF_DataFilter_C1FilterEditor_ItemMargin">ItemMargin</a>
        </td>
        <td class="markdown level1 summary"><p>Margin for all Filter Node items.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_ItemsSource" data-uid="C1.WPF.DataFilter.C1FilterEditor.ItemsSource">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.ItemsSource.html#C1_WPF_DataFilter_C1FilterEditor_ItemsSource">ItemsSource</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the object used as the items source for the current <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.html">C1FilterEditor</a> control.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_PopupStyle" data-uid="C1.WPF.DataFilter.C1FilterEditor.PopupStyle">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.PopupStyle.html#C1_WPF_DataFilter_C1FilterEditor_PopupStyle">PopupStyle</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.style">Style</a> applied to the menu.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_View" data-uid="C1.WPF.DataFilter.C1FilterEditor.View">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.View.html#C1_WPF_DataFilter_C1FilterEditor_View">View</a>
        </td>
        <td class="markdown level1 summary"><p>Gets the result of filtering the <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.ItemsSource.html#C1_WPF_DataFilter_C1FilterEditor_ItemsSource">ItemsSource</a>.</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_WPF_DataFilter_C1FilterEditor_ApplyFilterAsync" data-uid="C1.WPF.DataFilter.C1FilterEditor.ApplyFilterAsync">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.ApplyFilterAsync.html#C1_WPF_DataFilter_C1FilterEditor_ApplyFilterAsync">ApplyFilterAsync()</a>
        </td>
        <td class="markdown level1 summary"><p>Applies the filter to the data source asynchronously.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_ClearFilter" data-uid="C1.WPF.DataFilter.C1FilterEditor.ClearFilter">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.ClearFilter.html#C1_WPF_DataFilter_C1FilterEditor_ClearFilter">ClearFilter()</a>
        </td>
        <td class="markdown level1 summary"><p>Removes all expressions from filter.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_Dispose" data-uid="C1.WPF.DataFilter.C1FilterEditor.Dispose">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.Dispose.html#C1_WPF_DataFilter_C1FilterEditor_Dispose">Dispose()</a>
        </td>
        <td class="markdown level1 summary"></td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_Dispose_System_Boolean_" data-uid="C1.WPF.DataFilter.C1FilterEditor.Dispose(System.Boolean)">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.Dispose.html#C1_WPF_DataFilter_C1FilterEditor_Dispose_System_Boolean_">Dispose(bool)</a>
        </td>
        <td class="markdown level1 summary"></td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_Finalize" data-uid="C1.WPF.DataFilter.C1FilterEditor.Finalize">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.Finalize.html#C1_WPF_DataFilter_C1FilterEditor_Finalize">Finalize()</a>
        </td>
        <td class="markdown level1 summary"><p>Finalizes this instance of the <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.html">C1FilterEditor</a> class.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_OnApplyTemplate" data-uid="C1.WPF.DataFilter.C1FilterEditor.OnApplyTemplate">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.OnApplyTemplate.html#C1_WPF_DataFilter_C1FilterEditor_OnApplyTemplate">OnApplyTemplate()</a>
        </td>
        <td class="markdown level1 summary"></td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_OnFilterChanged_System_EventArgs_" data-uid="C1.WPF.DataFilter.C1FilterEditor.OnFilterChanged(System.EventArgs)">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.OnFilterChanged.html#C1_WPF_DataFilter_C1FilterEditor_OnFilterChanged_System_EventArgs_">OnFilterChanged(EventArgs)</a>
        </td>
        <td class="markdown level1 summary"><p>Raises the <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.FilterChanged.html">FilterChanged</a> event.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_OnFilterChanging_System_ComponentModel_CancelEventArgs_" data-uid="C1.WPF.DataFilter.C1FilterEditor.OnFilterChanging(System.ComponentModel.CancelEventArgs)">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.OnFilterChanging.html#C1_WPF_DataFilter_C1FilterEditor_OnFilterChanging_System_ComponentModel_CancelEventArgs_">OnFilterChanging(CancelEventArgs)</a>
        </td>
        <td class="markdown level1 summary"><p>Raises the <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.FilterChanging.html">FilterChanging</a> event.</p>
</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_WPF_DataFilter_C1FilterEditor_FilterChanged" data-uid="C1.WPF.DataFilter.C1FilterEditor.FilterChanged">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.FilterChanged.html">FilterChanged</a>
        </td>
        <td class="markdown level1 summary"><p>Occurs when the filter changes.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_DataFilter_C1FilterEditor_FilterChanging" data-uid="C1.WPF.DataFilter.C1FilterEditor.FilterChanging">
          <a class="xref" href="C1.WPF.DataFilter.C1FilterEditor.FilterChanging.html">FilterChanging</a>
        </td>
        <td class="markdown level1 summary"><p>Occurs before the filter is changed. Allows to cancel the change.</p>
</td>
      </tr>
    </tbody>
  </table>

</div>
