# C1.WPF.Extended.PropertyGrid.CollectionEditor

## Content

<div class="doc-site-dotnet-api-container">



  <h1 id="C1_WPF_Extended_PropertyGrid_CollectionEditor" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor" class="text-break">CollectionEditor Class
</h1>
  <div class="markdown level0 summary"><p>Default editor used by C1PropertyGrid to edit lists of values.</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.threading.dispatcherobject">DispatcherObject</a></div>
    <div class="level2"><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.dependencyobject">DependencyObject</a></div>
    <div class="level3"><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.media.visual">Visual</a></div>
    <div class="level4"><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.uielement">UIElement</a></div>
    <div class="level5"><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.frameworkelement">FrameworkElement</a></div>
    <div class="level6"><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.controls.control">Control</a></div>
    <div class="level7"><a class="xref" href="C1.WPF.Extended.PropertyGrid.AdvancedEditor.html">AdvancedEditor</a></div>
    <div class="level8"><span class="xref">CollectionEditor</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="C1.WPF.Extended.ITypeEditorControl.html">ITypeEditorControl</a></div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="C1.WPF.Extended.PropertyGrid.html">C1.WPF.Extended.PropertyGrid</a></h6>
  <h6><strong>Assembly</strong>: C1.WPF.Extended.4.6.2.dll</h6>
  <h5 id="C1_WPF_Extended_PropertyGrid_CollectionEditor_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class CollectionEditor : AdvancedEditor, IAnimatable, IFrameworkInputElement, IInputElement, ISupportInitialize, IQueryAmbient, ITypeEditorControl</code></pre>
  </div>
  <div class="codewrapper">
    <pre><code class="lang-vbnet hljs">Public Class CollectionEditor
    Inherits AdvancedEditor
    Implements IAnimatable, IFrameworkInputElement, IInputElement, ISupportInitialize, IQueryAmbient, ITypeEditorControl</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_Extended_PropertyGrid_CollectionEditor__ctor_C1_WPF_Extended_C1PropertyGrid_" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.#ctor(C1.WPF.Extended.C1PropertyGrid)">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.-ctor.html#C1_WPF_Extended_PropertyGrid_CollectionEditor__ctor_C1_WPF_Extended_C1PropertyGrid_">CollectionEditor(C1PropertyGrid)</a>
        </td>
        <td class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.html">CollectionEditor</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_Extended_PropertyGrid_CollectionEditor_CanUserAddItemsProperty" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserAddItemsProperty">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserAddItemsProperty.html">CanUserAddItemsProperty</a>
        </td>
        <td class="markdown level1 summary"><p>Identifies the <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserAddItems.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_CanUserAddItems">CanUserAddItems</a> dependency property.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_CanUserRemoveItemsProperty" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserRemoveItemsProperty">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserRemoveItemsProperty.html">CanUserRemoveItemsProperty</a>
        </td>
        <td class="markdown level1 summary"><p>Identifies the <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserRemoveItems.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_CanUserRemoveItems">CanUserRemoveItems</a> dependency property.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_CanUserSortItemsProperty" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserSortItemsProperty">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserSortItemsProperty.html">CanUserSortItemsProperty</a>
        </td>
        <td class="markdown level1 summary"><p>Identifies the <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserSortItems.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_CanUserSortItems">CanUserSortItems</a> dependency property.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_EditorStyleProperty" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.EditorStyleProperty">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.EditorStyleProperty.html">EditorStyleProperty</a>
        </td>
        <td class="markdown level1 summary"><p>Identifies the <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.EditorStyle.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_EditorStyle">EditorStyle</a> dependency property.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_SelectorStyleProperty" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.SelectorStyleProperty">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.SelectorStyleProperty.html">SelectorStyleProperty</a>
        </td>
        <td class="markdown level1 summary"><p>Identifies the <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.SelectorStyle.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_SelectorStyle">SelectorStyle</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_Extended_PropertyGrid_CollectionEditor_CanUserAddItems" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserAddItems">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserAddItems.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_CanUserAddItems">CanUserAddItems</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets a value indicating whether the user can add items to the edited collection.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_CanUserRemoveItems" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserRemoveItems">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserRemoveItems.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_CanUserRemoveItems">CanUserRemoveItems</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets a value indicating whether the user can remove items from the edited collection.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_CanUserSortItems" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserSortItems">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.CanUserSortItems.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_CanUserSortItems">CanUserSortItems</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets a value indicating whether the user can sort items in the edited collection.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_EditorStyle" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.EditorStyle">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.EditorStyle.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_EditorStyle">EditorStyle</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the style applied to the collection editor's property grid.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_SelectorStyle" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.SelectorStyle">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.SelectorStyle.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_SelectorStyle">SelectorStyle</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the style applied to the collection selector ListBox.</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_Extended_PropertyGrid_CollectionEditor_Attach_C1_WPF_Extended_PropertyAttribute_" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.Attach(C1.WPF.Extended.PropertyAttribute)">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.Attach.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_Attach_C1_WPF_Extended_PropertyAttribute_">Attach(PropertyAttribute)</a>
        </td>
        <td class="markdown level1 summary"><p>Attaches (initializes) the editor with the current property.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_Attach_C1_WPF_Extended_PropertyGroup_" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.Attach(C1.WPF.Extended.PropertyGroup)">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.Attach.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_Attach_C1_WPF_Extended_PropertyGroup_">Attach(PropertyGroup)</a>
        </td>
        <td class="markdown level1 summary"><p>Attaches (initializes) the editor with the current group.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_Create" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.Create">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.Create.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_Create">Create()</a>
        </td>
        <td class="markdown level1 summary"><p>Creates ands initializes a new instance of the editor</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_Detach_C1_WPF_Extended_PropertyAttribute_" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.Detach(C1.WPF.Extended.PropertyAttribute)">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.Detach.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_Detach_C1_WPF_Extended_PropertyAttribute_">Detach(PropertyAttribute)</a>
        </td>
        <td class="markdown level1 summary"><p>Detaches (releases) the editor that was attached with the property passed as parameter.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_OnOpenButtonClick_System_Object_System_Windows_RoutedEventArgs_" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.OnOpenButtonClick(System.Object,System.Windows.RoutedEventArgs)">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.OnOpenButtonClick.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_OnOpenButtonClick_System_Object_System_Windows_RoutedEventArgs_">OnOpenButtonClick(object, RoutedEventArgs)</a>
        </td>
        <td class="markdown level1 summary"><p>Called when open button is clicked.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_OnValueChanged" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.OnValueChanged">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.OnValueChanged.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_OnValueChanged">OnValueChanged()</a>
        </td>
        <td class="markdown level1 summary"><p>Called when value bound to this editor is changed.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_OnValueChanging_C1_WPF_Extended_PropertyGrid_CommitChangesEventsArgs_" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.OnValueChanging(C1.WPF.Extended.PropertyGrid.CommitChangesEventsArgs)">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.OnValueChanging.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_OnValueChanging_C1_WPF_Extended_PropertyGrid_CommitChangesEventsArgs_">OnValueChanging(CommitChangesEventsArgs)</a>
        </td>
        <td class="markdown level1 summary"><p>Called before the bound value changes.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_OnWindowCreated_C1_WPF_C1Window_" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.OnWindowCreated(C1.WPF.C1Window)">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.OnWindowCreated.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_OnWindowCreated_C1_WPF_C1Window_">OnWindowCreated(C1Window)</a>
        </td>
        <td class="markdown level1 summary"><p>Invoked after the <span class="xref">C1.WPF.C1Window</span> instance was created.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_SetDefaultValue" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.SetDefaultValue">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.SetDefaultValue.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_SetDefaultValue">SetDefaultValue()</a>
        </td>
        <td class="markdown level1 summary"><p>set a value when all properties in the group has not a same property value</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_Supports_C1_WPF_Extended_PropertyAttribute_" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.Supports(C1.WPF.Extended.PropertyAttribute)">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.Supports.html#C1_WPF_Extended_PropertyGrid_CollectionEditor_Supports_C1_WPF_Extended_PropertyAttribute_">Supports(PropertyAttribute)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns true if the editor supports (is able to show/edit) the property
values described by the PropertyAttribute.</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_Extended_PropertyGrid_CollectionEditor_ValueChanged" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.ValueChanged">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.ValueChanged.html">ValueChanged</a>
        </td>
        <td class="markdown level1 summary"><p>Fired when the value of the current property has changed.</p>
</td>
      </tr>
      <tr>
        <td id="C1_WPF_Extended_PropertyGrid_CollectionEditor_ValueChanging" data-uid="C1.WPF.Extended.PropertyGrid.CollectionEditor.ValueChanging">
          <a class="xref" href="C1.WPF.Extended.PropertyGrid.CollectionEditor.ValueChanging.html">ValueChanging</a>
        </td>
        <td class="markdown level1 summary"><p>Fired before the value of the current property is changed.</p>
</td>
      </tr>
    </tbody>
  </table>

</div>
