# C1.WPF.FlexGrid.C1FlexGrid.GroupRowPosition

## Content

<div class="doc-site-dotnet-api-container">



<h1 id="C1_WPF_FlexGrid_C1FlexGrid_GroupRowPosition_" data-uid="C1.WPF.FlexGrid.C1FlexGrid.GroupRowPosition*">GroupRowPosition Property
</h1>
<div class="markdown level0 summary"></div>
<div class="markdown level0 conceptual"></div>



<a id="C1_WPF_FlexGrid_C1FlexGrid_GroupRowPosition_" data-uid="C1.WPF.FlexGrid.C1FlexGrid.GroupRowPosition*"></a>
<h4 id="C1_WPF_FlexGrid_C1FlexGrid_GroupRowPosition" data-uid="C1.WPF.FlexGrid.C1FlexGrid.GroupRowPosition">GroupRowPosition</h4>
<div class="markdown level1 summary"><p>Gets or sets a value that indicates where group rows should be displayed with
respect to the data.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="declaration">Declaration</h5>
<div class="codewrapper">
  <pre><code class="lang-csharp hljs">public GroupRowPosition GroupRowPosition { get; set; }</code></pre>
</div>
<div class="codewrapper">
  <pre><code class="lang-vbnet hljs">Public Property GroupRowPosition As GroupRowPosition</code></pre>
</div>
<h5 id="C1_WPF_FlexGrid_C1FlexGrid_GroupRowPosition_remarks">Remarks</h5>
<div class="markdown level1 remarks"><pre><code>&lt;p&gt;Groups are created by data sources that implement the &lt;xref href=&quot;System.ComponentModel.ICollectionView&quot; data-throw-if-not-resolved=&quot;false&quot;&gt;&lt;/xref&gt;
</code></pre>
<p>interface.</p>
<p>To create groups, start by creating a data source object that implements
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.componentmodel.icollectionview">ICollectionView</a> (such as <b>PagedCollectionView</b> in Silverlight
or <b>ListCollectionView</b> in WPF), then add <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.windows.data.propertygroupdescription">PropertyGroupDescription</a>
objects to the data source's <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.componentmodel.icollectionview.groupdescriptions">GroupDescriptions</a> collection.</p>
<p>Once the groups have been defined, the data source will automatically create
and maintain them, and the <a class="xref" href="C1.WPF.FlexGrid.C1FlexGrid.html">C1FlexGrid</a> will display the results.</p>
</div>
<h5 id="C1_WPF_FlexGrid_C1FlexGrid_GroupRowPosition_examples">Examples</h5>
<p>The code below creates a data source with grouping and binds it to a <a class="xref" href="C1.WPF.FlexGrid.C1FlexGrid.html">C1FlexGrid</a>.</p>
<pre><code class="lang-csharp">// create PagedCollectionView used as a data source 
var data = new ObservableCollection&lt;Customer&gt;();
for (int i = 0; i &lt; 10; i++)
{
  data.Add(new Customer(i));
}
var view = new PagedCollectionView(data);
using (view.DeferRefresh())
{
    view.GroupDescriptions.Clear();
    view.GroupDescriptions.Add(new PropertyGroupDescription("Country"));
    view.GroupDescriptions.Add(new PropertyGroupDescription("Active"));
}

// bind grid to data source 
_flex.ItemsSource = view;

// show group rows above the data
_flex.GroupRowPosition = GroupRowPosition.AboveData;</code></pre>

</div>
