<?xml version="1.0"?>
<doc>
  <assembly>
    <name>C1.WPF.FlexGrid.4</name>
  </assembly>
  <members>
    <member name="T:C1.WPF.FlexGrid.C1FlexGrid">
      <summary>
            C1FlexGrid control.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnCreateAutomationPeer">
      <summary>
            Gets an AutomationPeer object used for testing the control.
            </summary>
      <returns>An AutomationPeer object used for testing the control.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.#ctor">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" />.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnApplyTemplate">
      <summary>
            Applies the template defined in the <see cref="P:System.Windows.Controls.Control.Template" /> property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.CollectionView">
      <summary>
            Gets the <see cref="T:System.ComponentModel.ICollectionView" /> that represents the current data source.
            </summary>
      <remarks>
        <para>This property exposes the grid's data source as an <see cref="T:System.ComponentModel.ICollectionView" />. 
            If the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ItemsSource" /> value implements <see cref="T:System.ComponentModel.ICollectionView" />, then 
            the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ItemsSource" /> and <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.CollectionView" /> properties return the 
            same value.</para>
        <para>If the current <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ItemsSource" /> does not implement the <see cref="T:System.ComponentModel.ICollectionView" />, 
            then the control creates an internal <see cref="T:System.ComponentModel.ICollectionView" /> that wraps the data 
            source. The <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.CollectionView" /> property exposes this internal <see cref="T:System.ComponentModel.ICollectionView" />
            so applications have access to the data source state including sorting, filtering, and 
            grouping.</para>
      </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ItemType">
      <summary>
            Gets the type of item contained in the current data source.
            </summary>
      <remarks>
            This property allows the caller to determine the type of object being displayed by
            the grid. It is often more convenient than analyzing or enumerating the object 
            assigned to the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ItemsSource" /> property.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.AutoComplete">
      <summary>
            Gets or sets a value that determines whether the control should try to automatically
            complete entries as the user types, based on other entries in the same column
            (like Microsoft Excel does).
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.Rows">
      <summary>
            Gets the collection of rows in the grid.
            </summary>
      <remarks>
            This property is equivalent to <b>Cells.Rows</b>.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.FrozenRows">
      <summary>
            Gets or sets the number of non-scrollable rows.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.Columns">
      <summary>
            Gets the collection of columns in the grid.
            </summary>
      <remarks>
            This property is equivalent to <b>Cells.Columns</b>.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.FrozenColumns">
      <summary>
            Gets or sets the number of non-scrollable columns.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ColumnFooterRows">
      <summary>
            Gets the collection of column footer rows.
            </summary>
      <remarks>
            This property is equivalent to <b>ColumnFooters.Rows</b>.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.Cells">
      <summary>
            Gets the <see cref="T:C1.WPF.FlexGrid.GridPanel" /> that contains the data cells in the grid.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ColumnHeaders">
      <summary>
            Gets the <see cref="T:C1.WPF.FlexGrid.GridPanel" /> that contains the column header cells.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ColumnFooters">
      <summary>
            Gets the <see cref="T:C1.WPF.FlexGrid.GridPanel" /> that contains the column footer cells.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.RowHeaders">
      <summary>
            Gets the <see cref="T:C1.WPF.FlexGrid.GridPanel" /> that contains the row header cells.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.TopLeftCells">
      <summary>
            Gets the <see cref="T:C1.WPF.FlexGrid.GridPanel" /> that contains the cells in the upper left corner of the grid.
            </summary>
      <remarks>
            This is the area above the row headers and to the left of the column headers. By default, it
            contains only one cell at the top left corner of the grid.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.BottomLeftCells">
      <summary>
            Gets the <see cref="T:C1.WPF.FlexGrid.GridPanel" /> that contains the cells in the lower left corner of the grid.
            </summary>
      <remarks>
            This is the area below the row headers and to the left of the column footers.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.AllowResizing">
      <summary>
            Gets or sets a value that indicates whether users are allowed to resize
            rows and columns using the mouse.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.AllowDragging">
      <summary>
            Gets or sets a value that indicates whether users are allowed to move 
            rows and columns to new positions using the mouse.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.AllowMerging">
      <summary>
            Gets or sets a value that indicates which parts of the grid support 
            cell merging.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.AllowSorting">
      <summary>
            Gets or sets a value that indicates whether users are allowed to sort
            columns by clicking the column header cells.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ShowSort">
      <summary>
            Gets or sets a value that indicates whether the grid shows the current
            sort state by adding a glyph to the column headers of sorted columns.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.NewRowBackground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the background of the
            new row template.
            </summary>
      <remarks>
            The new row template is visible only if the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AllowAddNew" /> property is
            set to true and if the grid data source supports adding new items.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.DragDropIndicatorBrush">
      <summary>
            Gets or sets the brush of drop indicator when drag columns or rows.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.DragDropIndicatorBrushProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.DragDropIndicatorBrush" /> dependency property. 
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.SortAscendingIconTemplate">
      <summary>
            Gets or sets the <see cref="T:C1.WPF.C1IconTemplate" /> used to present the sort icon when the column is sorted in ascending order.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.SortAscendingIconTemplateProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.SortAscendingIconTemplate" /> dependency property. 
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.SortDescendingIconTemplate">
      <summary>
            Gets or sets the <see cref="T:C1.WPF.C1IconTemplate" /> used to present the sort icon when the column is sorted in descending order.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.SortDescendingIconTemplateProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.SortDescendingIconTemplate" /> dependency property. 
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ExpandedAboveIconTemplate">
      <summary>
            Gets or sets the <see cref="T:C1.WPF.C1IconTemplate" /> used to present the icon when the item group/detail is expanded above.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.ExpandedAboveIconTemplateProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ExpandedAboveIconTemplate" /> dependency property. 
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ExpandedBelowIconTemplate">
      <summary>
            Gets or sets the <see cref="T:C1.WPF.C1IconTemplate" /> used to present the group icon when the item group/detail is expanded below.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.ExpandedBelowIconTemplateProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ExpandedBelowIconTemplate" /> dependency property. 
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.CollapsedIconTemplate">
      <summary>
            Gets or sets the <see cref="T:C1.WPF.C1IconTemplate" /> used to present the group icon when the item group/detail is collapsed.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.CollapsedIconTemplateProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.CollapsedIconTemplate" /> dependency property. 
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.NewRowIconTemplate">
      <summary>
            Gets or sets the template used to create the icon displayed in the header of a new row.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.NewRowIconTemplateProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.NewRowIconTemplate" /> dependency property. 
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.KeyActionEnter">
      <summary>
            Gets or sets a value that indicates the action performed by the grid
            when the user presses the <b>Enter</b> key.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.KeyActionTab">
      <summary>
            Gets or sets a value that indicates the action performed by the grid
            when the user presses the <b>Tab</b> key.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ClipboardCopyMode">
      <summary>
            Gets or sets a value that indicates how content is copied to the clipboard.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ClipboardPasteMode">
      <summary>
            Gets or sets a value that indicates how content is pasted from the clipboard.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.IsReadOnly">
      <summary>
            Gets or sets a value that indicates whether the user can edit values
            in the grid.
            </summary>
      <remarks>
        <para>Editing in the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> is similar to editing in Excel.</para>
        <para>Pressing F2 or double-clicking a cell puts the grid into full-edit mode. 
            In this mode, the cell editor remains active until the user presses Enter, 
            Tab, or Escape, or until he moves the selection with the mouse. In full-edit 
            mode, pressing the cursor keys does not cause the grid to exit edit mode.</para>
        <para>Typing text directly into a cell puts the grid in quick-edit mode. 
            The cell editor remains active until the user presses Enter, Tab, or Escape,
            or any arrow keys. In quick-edit mode, pressing the cursor keys causes the grid to 
            exit edit mode.</para>
        <para>While editing, the user can toggle between full and quick modes by pressing 
            the F2 key.</para>
      </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ShowMarquee">
      <summary>
            Gets or sets a value that indicates whether the grid shows an Excel-style
            marquee around the current selection.
            </summary>
      <remarks>
            By default, the marquee is black and two pixels thick. You can customize 
            the appearance of the marquee using the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.Marquee" /> property.
            </remarks>
      <example>
            The code below shows how you can create a marquee with a thick rounded 
            red border and semi-transparent red interior and use that to highlight
            the selection instead of the regular <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.SelectionBackground" />
            and <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.CursorBackground" /> properties.
            <code>
            // customize the marquee
            var m = _flex.Marquee;
            m.Stroke = new SolidColorBrush(Colors.Red);
            m.Fill = new SolidColorBrush(Color.FromArgb(0x20, 0xff, 0x80, 0x80));
            m.StrokeThickness = 4;
            m.RadiusX = 3;
            m.RadiusY = 3;
            
            // show the marquee
            _flex.ShowMarquee = true;
            
            // no need to highlight the selection/cursor
            _flex.SelectionBackground = null;
            _flex.CursorBackground = null;
            </code></example>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.Marquee">
      <summary>
            Gets the <see cref="T:System.Windows.Shapes.Rectangle" /> used to show the Excel-style marquee around 
            the current selection.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ShowOutlineBar">
      <summary>
            Gets or sets a value that determines whether the grid should display
            the outline button bar.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ShowErrors">
      <summary>
            Gets or sets a value that determines whether the grid should display
            validation errors.
            </summary>
      <remarks>
        <para>Validation errors may be triggered in several ways:</para>
        <para>If a property setter in a data item throws an exception, an error message is 
            displayed by the cell editor and the editor remains active until the error is corrected
            or until the changes are canceled.</para>
        <para>If the data item implements the <see cref="T:System.ComponentModel.IDataErrorInfo" /> interface, then 
            the item can raise column-level validation errors by implementing the default indexer
            and returning a column-specific error message (also displayed in the cell editor), or
            it can trigger item-level validation errors by setting the Error property to an error 
            message. In this case, the error is not specific to any columns, and the error is 
            displayed as an icon in the first cell in the row header.</para>
        <para>If the data item implements the <see cref="!:INotifyDataErrorInfo" /> interface, 
            then the item can raise column-level or item-level validation errors as above, and it 
            can raise those validation errors asynchronously. <see cref="!:INotifyDataErrorInfo" /> 
            is more complex and harder to implement than <see cref="T:System.ComponentModel.IDataErrorInfo" />.</para>
      </remarks>
      <example>
            The code below shows how you can implement validation in your data classes using plain
            exceptions and the <see cref="T:System.ComponentModel.IDataErrorInfo" /> interface. For an example of validation
            using the <see cref="!:INotifyDataErrorInfo" /> interface, please see
            http://msdn.microsoft.com/en-us/library/system.componentmodel.inotifydataerrorinfo(v=vs.95).aspx.
            <code>
                public class Product : 
                    INotifyPropertyChanged, 
                    IEditableObject,
                    IDataErrorInfo
            {
                // ** method 1: throw an exception when setting the Price to negative values
                public double? Price
                {
                    get { return (double?)GetValue("Price"); }
                    set
                    {
                        if (value &lt;= 0)
                        { 
                            throw new Exception("Price must be greater than zero!");
                        }
                        SetValue("Price", value); 
                    }
                }
                
                // ** method 2: return errors for specific columns
                string IDataErrorInfo.this[string columnName]
                {
                    get
                    {
                        string msg = null;
                        switch (columnName)
                        {
                            case "Cost":    
                                if (Cost &lt;= 0)
                                {
                                    msg = "Cost must be greater than zero!";
                                }
                                break;
                        }
                        return msg;
                    }
                }
                
                // ** method 3: return errors for the entire row 
                // (validation depends on multiple columns)
                string IDataErrorInfo.Error
                {
                    get
                    {
                        return Price &lt; Cost
                            ? "Price must be greater than Cost!"
                            : null;
                    }
                }
            }
            </code></example>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ErrorStyle">
      <summary>
            Gets or sets the <see cref="T:C1.WPF.FlexGrid.CellStyle" /> used to highlight cells that 
            contain errors.
            </summary>
      <remarks>
        <para>The default error style draws a red border around cells that contain
            errors. You can use this property to modify this style to change the
            cell background, foreground, make items bold, etc.</para>
        <para>This property has no effect if <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ShowErrors" /> is set to false.</para>
      </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.CollapseGroupsToLevel(System.Int32)">
      <summary>
            Collapses all the group rows to a given level.
            </summary>
      <param name="level">Grouping level to show.</param>
      <remarks>
        <para>When the grid is bound to a grouped data source, it automatically
            adds group rows above each group. Individual group rows can be collapsed
            or expanded using the <see cref="P:C1.WPF.FlexGrid.GroupRow.IsCollapsed" /> property.</para>
        <para>This method allows the caller to expand or collapse the entire 
            outline to a given level.</para>
        <para>For example, if the grid is bound to a data source with <b>three</b>
            group descriptors, then <b>CollapseGroupsToLevel(0)</b> would collapse all 
            top-level group rows, showing only the first level of the grouping outline. 
            <b>CollapseGroupsToLevel(2)</b> would show all the group rows, and no data
            rows. <b>CollapseGroupsToLevel(3)</b> would show all rows (groups and
            detail).</para>
        <example>
            The code below creates data source with three levels of grouping, then
            shows the first two levels of the grouping outline:
            <code>
            // create grouped data source
            var view = new PagedCollectionView(dataList);
            var gd = view.GroupDescriptions;
            gd.Add(new PropertyGroupDescription("Country"));
            gd.Add(new PropertyGroupDescription("City"));
            gd.Add(new PropertyGroupDescription("Customer"));
            
            // assign data source to grid
            _flex.ItemsSource = view;
            
            // collapse grouping outline to level 1
            // (show country and city groups, hide customer groups and all detail rows)
            _flex.CollapseGroupsToLevel(1);
            
            // expand grouping outline show all detail
            _flex.CollapseGroupsToLevel(gd.Count);
            
            // collapse grouping outline to show all group rows and no detail
            _flex.CollapseGroupsToLevel(gd.Count - 1);
            </code></example>
      </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.SelectAll">
      <summary>
            Selects all cells.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Select(System.Int32,System.Int32)">
      <summary>
            Selects a given cell.
            </summary>
      <param name="row">Index of the row that contains the selected cell.</param>
      <param name="col">Index of the column that contains the selected cell.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Select(C1.WPF.FlexGrid.CellRange,System.Boolean)">
      <summary>
            Selects a given cell and optionally scrolls it into view.
            </summary>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> to select.</param>
      <param name="scrollIntoView">Whether to scroll the new selection into view.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Select(System.Int32,System.Int32,System.Boolean)">
      <summary>
            Selects a given cell and optionally scrolls it into view.
            </summary>
      <param name="row">Index of the row that contains the selected cell.</param>
      <param name="col">Index of the column that contains the selected cell.</param>
      <param name="scrollIntoView">Whether to scroll the new selection into view.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Select(System.Int32,System.Int32,System.Int32,System.Int32,System.Boolean)">
      <summary>
            Selects cell range and optionally scrolls it into view.
            </summary>
      <param name="row">Index of the first row in the selected range.</param>
      <param name="col">Index of the first column in the selected range.</param>
      <param name="row2">Index of the last row in the selected range.</param>
      <param name="col2">Index of the last column in the selected range.</param>
      <param name="scrollIntoView">Whether to scroll the new selection into view.</param>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.Selection">
      <summary>
            Gets or sets the current selection.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.GetSelectedState(C1.WPF.FlexGrid.CellRange)">
      <summary>
            Gets a <see cref="T:C1.WPF.FlexGrid.SelectedState" /> value that indicates the selected
            state of the cells in a <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
      <param name="rng">
      </param>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.KeepCurrentVisible">
      <summary>
            Gets or sets a value that indicates whether the grid should automatically
            scroll to keep the current item visible.
            </summary>
      <remarks>
        <para>This property applies only to bound mode. If <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.KeepCurrentVisible" />
            is set to true, then the grid will automatically scroll to show the item that is
            selected in the <see cref="T:System.ComponentModel.ICollectionView" /> being used as an items source.
            The current selection may be set in code, or by selecting an item in another 
            control that is bound to the same data source.</para>
      </remarks>
      <example>
            The code below causes the grid to automatically scroll to show the current item
            whenever the "Top" or "Bottom" buttons are clicked:
            <code>
            public MainPage()
            {
              InitializeComponent();
              _flex..KeepCurrentVisible = true;
            }
            
            void Top_Click(object sender, RoutedEventArgs e)
            {
              _flex.CollectionView.MoveCurrentToFirst();
            }
            void Bottom_Click(object sender, RoutedEventArgs e)
            {
              _flex.CollectionView.MoveCurrentToLast();
            }
            </code></example>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.HitTest(System.Windows.RoutedEventArgs)">
      <summary>
            Gets a <see cref="T:C1.WPF.FlexGrid.HitTestInfo" /> object that contains information about the
            grid at a given location.
            </summary>
      <param name="e">
        <see cref="T:System.Windows.Input.MouseEventArgs" /> that specifies the point to be tested.</param>
      <returns>A <see cref="T:C1.WPF.FlexGrid.HitTestInfo" /> object that contains information about the
            grid at the location specified by the <paramref name="e" /> parameter.</returns>
      <example>
            The code below handles the <b>MouseMove</b> event and shows the coordinates 
            and content of the cell under the mouse.
            <code>
            void _flex_MouseMove(object sender, MouseEventArgs e)
            {
                var ht = _flex.HitTest(e);
                _tb.Text = string.Format(
                    "HitTest:: cell type {0}, row {1}, column {2}, content '{3}'", 
                    ht.CellType, // e.g. Cell, ColumnHeader, RowHeader
                    ht.Row, 
                    ht.Column, 
                    ht.CellRange.IsValid ? _flex[ht.Row, ht.Column] : "n/a");
            }
            </code></example>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.HitTest(System.Windows.Point)">
      <summary>
            Gets a <see cref="T:C1.WPF.FlexGrid.HitTestInfo" /> object that contains information about the
            grid at a given location.
            </summary>
      <param name="point">
        <see cref="T:System.Windows.Point" />, in control coordinates, that specifies
            the position to be tested.</param>
      <remarks>
            For more details and an example, please see <see cref="M:HitTest(MouseEventArgs)" />.
            </remarks>
      <returns>A <see cref="T:C1.WPF.FlexGrid.HitTestInfo" /> object that contains information about the
            grid at the location specified by the <paramref name="point" /> parameter.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.GetAggregate(C1.WPF.FlexGrid.Aggregate,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Calculates aggregate statistics for a cell range.
            </summary>
      <param name="aggregate">
        <see cref="T:C1.WPF.FlexGrid.Aggregate" /> value that specifies the type of aggregate to calculate.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> object that contains the values to be aggregated.</param>
      <returns>A decimal value that represents the aggregate.</returns>
      <remarks>
            Cells in invisible rows and columns are included in the aggregate calculations; 
            cells in group rows are not.
            </remarks>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.CustomAggregate">
      <summary>
            Occurs when the grid needs to calculate a custom aggregate.
            </summary>
      <remarks>
            The event arguments contain a range that is to be aggregated; the
            event handler should calculate the custom aggregate and assign the
            value to the <b>Result</b> parameter.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnCustomAggregate(C1.WPF.FlexGrid.CustomAggregateEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.CustomAggregate" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CustomAggregateEventArgs" /> that contains the event data.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.IncludeInAggregate(C1.WPF.FlexGrid.Row,C1.WPF.FlexGrid.Column)">
      <summary>
            Gets a value that determines whether a cell should be included in the aggregates
            calculated with the <see cref="M:C1.WPF.FlexGrid.C1FlexGrid.GetAggregate(C1.WPF.FlexGrid.Aggregate,C1.WPF.FlexGrid.CellRange)" /> method.
            </summary>
      <param name="row">
        <see cref="T:C1.WPF.FlexGrid.Row" /> that contains the cell to be included in the aggregate.</param>
      <param name="col">
        <see cref="T:C1.WPF.FlexGrid.Column" /> that contains the cell to be included in the aggregate.</param>
      <returns>True if the cell should be included in the aggregate calculation, false otherwise.</returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.GridLinesVisibility">
      <summary>
            Gets or sets a value that indicates which grid lines separating inner cells are shown.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ViewRange">
      <summary>
            Gets a <see cref="T:C1.WPF.FlexGrid.CellRange" /> value that indicates the range of cells
            currently visible on the grid.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.AutoSizeColumns(System.Int32,System.Int32,System.Double)">
      <summary>
            Resizes a column range to fit their visible content.
            </summary>
      <param name="startCol">Index of the first column to resize.</param>
      <param name="endCol">Index of the last column to resize.</param>
      <param name="extra">Extra width to add to the column, in pixels.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.AutoSizeColumns(System.Int32,System.Int32,System.Double,System.Boolean,System.Boolean)">
      <summary>
            Resizes a column range to fit their content.
            </summary>
      <param name="startCol">Index of the first column to resize.</param>
      <param name="endCol">Index of the last column to resize.</param>
      <param name="extra">Extra width to add to the column, in pixels.</param>
      <param name="allCells">Whether to measure all cells, including those that are not currently visible.</param>
      <param name="skipStars">Whether to skip star-sized columns.</param>
      <remarks>
            Setting the <paramref name="allCells" /> parameter to true causes the grid to create and 
            measure cell elements for the entire grid content, including rows and columns that are 
            not currently visible. This option may be very time consuming if the grid contains a
            lot of data.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.AutoSizeFixedColumns(System.Int32,System.Int32,System.Double)">
      <summary>
            Resizes a range of fixed columns to fit their visible contents.
            </summary>
      <param name="startCol">Index of the first column to resize.</param>
      <param name="endCol">Index of the last column to resize.</param>
      <param name="extra">Extra width to add to the column, in pixels.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.AutoSizeFixedColumns(System.Int32,System.Int32,System.Double,System.Boolean,System.Boolean)">
      <summary>
            Resizes a range of fixed columns to fit their content.
            </summary>
      <param name="startCol">Index of the first column to resize.</param>
      <param name="endCol">Index of the last column to resize.</param>
      <param name="extra">Extra width to add to the column, in pixels.</param>
      <param name="allCells">Whether to measure all cells, including those that are not currently visible.</param>
      <param name="skipStars">Whether to skip star-sized columns.</param>
      <remarks>
            Setting the <paramref name="allCells" /> parameter to true causes the grid to create and 
            measure cell elements for the entire grid content, including rows and columns that are 
            not currently visible. This option may be very time consuming if the grid contains a
            lot of data.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.AutoSizeColumn(System.Int32,System.Double)">
      <summary>
            Resizes a column to fit its visible contents.
            </summary>
      <param name="col">Column to resize.</param>
      <param name="extra">Extra width to add to the column, in pixels.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.AutoSizeFixedColumn(System.Int32,System.Double)">
      <summary>
            Resizes a fixed column to fit its visible contents.
            </summary>
      <param name="col">Column to resize.</param>
      <param name="extra">Extra width to add to the column, in pixels.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.AutoSizeRows(System.Int32,System.Int32,System.Double)">
      <summary>
            Resizes a row range to fit their visible contents.
            </summary>
      <param name="startRow">Index of the first row to resize.</param>
      <param name="endRow">Index of the last row to resize.</param>
      <param name="extra">Extra height to add to the row, in pixels.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.AutoSizeRows(System.Int32,System.Int32,System.Double,System.Boolean)">
      <summary>
            Resizes a row range to fit their content.
            </summary>
      <param name="startRow">Index of the first row to resize.</param>
      <param name="endRow">Index of the last row to resize.</param>
      <param name="extra">Extra height to add to the row, in pixels.</param>
      <param name="allCells">Whether to measure all cells, including those that are not currently visible.</param>
      <remarks>
            Setting the <paramref name="allCells" /> parameter to true causes the grid to create and 
            measure cell elements for the entire grid content, including rows and columns that are 
            not currently visible. This option may be very time consuming if the grid contains a
            lot of data.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.AutoSizeFixedRows(System.Int32,System.Int32,System.Double)">
      <summary>
            Resizes a range of fixed rows to fit their visible contents.
            </summary>
      <param name="startRow">Index of the first row to resize.</param>
      <param name="endRow">Index of the last row to resize.</param>
      <param name="extra">Extra height to add to the row, in pixels.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.AutoSizeFixedRows(System.Int32,System.Int32,System.Double,System.Boolean)">
      <summary>
            Resizes a range of fixed rows to fit their content.
            </summary>
      <param name="startRow">Index of the first row to resize.</param>
      <param name="endRow">Index of the last row to resize.</param>
      <param name="extra">Extra height to add to the row, in pixels.</param>
      <param name="allCells">Whether to measure all cells, including those that are not currently visible.</param>
      <remarks>
            Setting the <paramref name="allCells" /> parameter to true causes the grid to create and 
            measure cell elements for the entire grid content, including rows and columns that are 
            not currently visible. This option may be very time consuming if the grid contains a
            lot of data.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.AutoSizeRow(System.Int32,System.Double)">
      <summary>
            Resizes a row to fit its visible contents.
            </summary>
      <param name="row">Index of the row to resize.</param>
      <param name="extra">Extra height to add to the row, in pixels.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.AutoSizeFixedRow(System.Int32,System.Double)">
      <summary>
            Resizes a fixed row to fit its visible contents.
            </summary>
      <param name="row">Index of the row to resize.</param>
      <param name="extra">Extra height to add to the row, in pixels.</param>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ColumnLayout">
      <summary>
            Gets or sets a string that defines the current column layout.
            </summary>
      <remarks>
        <para>The column layout string defines the column positions, visibility, and width.
            Invalid information in the column layout string is ignored.</para>
        <para>This property can be used to persist column layouts defined by users so they
            are preserved across sessions, and it can also be used to implement undo/redo
            functionality in applications that allow users to modify the column layout.</para>
        <para>In order for the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ColumnLayout" /> property to work correctly, columns 
            should have unique names (see <see cref="P:C1.WPF.FlexGrid.Column.ColumnName" /> property) or binding paths.</para>
      </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.SaveColumnLayout(System.Xml.XmlWriter)">
      <summary>
            Saves the current column layout to an <see cref="T:System.Xml.XmlWriter" />.
            </summary>
      <param name="xw">
        <see cref="T:System.Xml.XmlWriter" /> that will receive the current column layout information.</param>
      <remarks>
        <para>The column layout string defines the column positions, visibility, and width.
            Invalid information in the column layout string is ignored.</para>
        <para>This property can be used to persist column layouts defined by users so they
            are preserved across sessions, and it can also be used to implement undo/redo
            functionality in applications that allow users to modify the column layout.</para>
      </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.LoadColumnLayout(System.Xml.XmlReader)">
      <summary>
            Loads a column layout from an <see cref="T:System.Xml.XmlReader" />.
            </summary>
      <param name="xr">
        <see cref="T:System.Xml.XmlReader" /> that contains the column layout information.</param>
      <remarks>
        <para>The column layout string defines the column positions, visibility, and width.
            Invalid information in the column layout string is ignored.</para>
        <para>This property can be used to persist column layouts defined by users so they
            are preserved across sessions, and it can also be used to implement undo/redo
            functionality in applications that allow users to modify the column layout.</para>
      </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.DeferScrolling">
      <summary>
            Gets or sets a value that determines whether scrolling should be deferred until the
            user releases the scrollbar thumb.
            </summary>
      <remarks>
        <para>The default behavior of the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> is "live" scrolling, where the 
            user is able to see the contents of the grid move while dragging the thumb of a scroll bar.
            This "live" scrolling requires a relatively large amount of processing, which in some
            cases may cause the UI to feel sluggish.</para>
        <para>Deferred scrolling is an alternative scrolling behavior where the contents of the 
            grid remain static until the user releases the mouse button (similar to the behavior of the 
            Outlook 2007 Inbox).</para>
        <para>While the user drags the scrollbar thumb in deferred scrolling mode, the grid raises 
            the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.ScrollingDeferred" /> event. This event can be used to provide feedback during
            the deferred scrolling operation.</para>
      </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.RowBackground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint row backgrounds.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.AlternatingRowBackground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the background of odd-numbered rows.
            </summary>
      <remarks>
            Setting this property to null causes all rows to be painted using the brush defined by the
            <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.RowBackground" /> property.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.GridLinesBrush">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the lines between cells.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.FrozenLinesBrush">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the lines between frozen
            and scrollable areas of the grid.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.HeaderGridLinesBrush">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the lines between 
            row and column header cells.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ColumnHeaderBackground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint column header backgrounds.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ColumnHeaderForeground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint column header content.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.RowHeaderBackground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint row header backgrounds.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.RowHeaderForeground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint row header content.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ColumnHeaderSelectedBackground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint column header backgrounds
            for selected cells.
            </summary>
      <remarks>
        <para>This property allows you to highlight headers that correspond to the current 
            selection, making it easier for the user to identify the selection (as in Excel).</para>
        <para>Setting this property to null causes all column headers to be rendered using the brush
            defined by the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ColumnHeaderBackground" /> property.</para>
      </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.RowHeaderSelectedBackground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint row header backgrounds
            for selected cells.
            </summary>
      <remarks>
        <para>This property allows you to highlight headers that correspond to the current 
            selection, making it easier for the user to identify the selection (as in Excel).</para>
        <para>Setting this property to null causes all row headers to be rendered using the brush
            defined by the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.RowHeaderBackground" /> property.</para>
      </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.HeaderFontWeight">
      <summary>
            Gets or sets the <see cref="T:System.Windows.FontWeight" /> used to render text in header cells.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.TopLeftCellBackground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the background of the 
            cell at the left top corner of the grid.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.GroupRowBackground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the background of group rows.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.GroupRowForeground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the foreground of group rows.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.CursorBackground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the background of 
            the cursor cell.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.CursorForeground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the foreground of 
            the cursor cell.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.SelectionBackground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the background of 
            selected cells excluding the cursor cell.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.SelectionForeground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the foreground of 
            selected cells excluding the cursor cell.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.EditorBackground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the background of 
            cells in edit mode.
            </summary>
      <remarks>
            Setting this property to null causes the editor background to be painted using the
            brush defined by the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.CursorBackground" /> property.</remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.EditorForeground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the foreground of 
            cells in edit mode.
            </summary>
      <remarks>
            Setting this property to null causes the editor background to be painted using the
            brush defined by the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.CursorForeground" /> property.</remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.MarqueeColor">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to the stroke of the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.Marquee" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.CellFactory">
      <summary>
            Gets or sets the <see cref="T:C1.WPF.FlexGrid.ICellFactory" /> class responsible for creating
            and destroying <see cref="T:System.Windows.FrameworkElement" /> objects used to represent grid cells.
            </summary>
      <remarks>
            Setting this property to null causes the grid to use the default cell factory 
            implemented by the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.CellFactory" /> class.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.GetCellFactory">
      <summary>
            Gets the <see cref="T:C1.WPF.FlexGrid.ICellFactory" /> class responsible for creating and destroying 
            <see cref="T:System.Windows.FrameworkElement" /> objects used to represent grid cells.
            </summary>
      <returns>
            The custom cell factory assigned to the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.CellFactory" /> property or
            a default cell factory implementation if a custom value was not set.
            </returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.MergeManager">
      <summary>
            Gets or sets the <see cref="T:C1.WPF.FlexGrid.IMergeManager" /> class responsible for handling cell 
            merging on the grid.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.GroupHeaderConverter">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Data.IValueConverter" /> used to create the content shown
            in <see cref="T:C1.WPF.FlexGrid.GroupRow" /> cells to summarize group information.
            </summary>
      <remarks>
        <para>By default, the grid creates group headers that show the name of the property being
            grouped on, the value of the property, and the number of items in the group.</para>
        <para>You can modify or customize this information by defining your own group header
            converter class and assigning an instance of this class to the grid's 
            <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.GroupHeaderConverter" /> property.</para>
      </remarks>
      <example>
            The example below shows the default group header converter class implementation.
            <code>
            class GroupHeaderConverter : IValueConverter
            {
              public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
              {
                var gr = parameter as GroupRow;
                var group = gr.Group;
                if (group != null &amp;&amp; gr != null &amp;&amp; targetType == typeof(string))
                {
                  var desc = gr.Grid.CollectionView.GroupDescriptions[gr.Level] as PropertyGroupDescription;
                  return desc != null
                    ? string.Format("{0}: {1} ({2:n0} item{3})", 
                        desc.PropertyName, 
                        group.Name, 
                        group.ItemCount, 
                        group.ItemCount == 1 ? string.Empty : "s")
                    : string.Format("{0} ({1:n0} items)", group.Name, group.ItemCount);
                }
                  
                // default
                return value;
              }
              public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
              {
                return value;
              }
            }
            </code></example>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.Item(System.Int32,C1.WPF.FlexGrid.Column)">
      <summary>
            Gets or sets the value of a specific cell.
            </summary>
      <param name="row">Index of the row that contains the cell.</param>
      <param name="col">
        <see cref="T:C1.WPF.FlexGrid.Column" /> that contains the cell.</param>
      <returns>The value of the cell.</returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.Item(System.Int32,System.Int32)">
      <summary>
            Gets or sets the value of a specific cell.
            </summary>
      <param name="row">Index of the row that contains the cell.</param>
      <param name="col">Index of the column that contains the cell.</param>
      <returns>The value of the cell.</returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.Item(System.Int32,System.String)">
      <summary>
            Gets or sets the value of a specific cell.
            </summary>
      <param name="row">Index of the row that contains the cell.</param>
      <param name="colName">
        <see cref="P:C1.WPF.FlexGrid.Column.ColumnName" /> of the column that contains the cell.</param>
      <returns>The value of the cell.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Copy">
      <summary>
            Copy the current selection to the clipboard.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Paste">
      <summary>
            Pastes the content of the clipboard to the grid.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.GetClipString(C1.WPF.FlexGrid.ClipboardCopyMode)">
      <summary>
            Gets the current selection as a string suitable for copying to the clipboard.
            </summary>
      <param name="copyMode">
        <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ClipboardCopyMode" /> that specifies which 
            headers should be included in the string.</param>
      <returns>A string with the content of the current selection. Columns are delimited 
            by tabs and rows are delimited by new lines.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.GetClipString(C1.WPF.FlexGrid.CellRange,C1.WPF.FlexGrid.ClipboardCopyMode)">
      <summary>
            Gets a range of cells as a string suitable for copying to the clipboard.
            </summary>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the range of cells that 
            should be included in the string.</param>
      <param name="copyMode">
        <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ClipboardCopyMode" /> that specifies which 
            headers should be included in the string.</param>
      <returns>A string with the content of the current selection. Columns are delimited 
            by tabs and rows are delimited by new lines.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.SetClipString(System.String,C1.WPF.FlexGrid.CellRange,C1.WPF.FlexGrid.ClipboardCopyMode)">
      <summary>
            Parses a string into rows and columns and applies the content to a given range.
            </summary>
      <param name="text">Text to parse into the grid.</param>
      <param name="rng">Range where the text will be pasted.</param>
      <param name="copyMode">Whether the string contains header information that should
            be discarded when applying the values to the cells.</param>
      <remarks>
        <para>The string contains rows delimited by newline characters and cells delimited
            by tabs (standard clipboard format).</para>
        <para>Only the top left cell of the <paramref name="rng" /> parameter is used;
            the number of rows and columns copied to the grid is determined by the content
            of the <paramref name="text" /> parameter.</para>
      </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.StartEditing(System.Boolean)">
      <summary>
            Starts editing the cell that is currently selected.
            </summary>
      <param name="fullEdit">Whether to stay in edit mode when the user presses
            the cursor keys.</param>
      <returns>True if the grid entered edit mode.</returns>
      <remarks>
        <para>For more details on the effects of the <paramref name="fullEdit" /> parameter, 
            see the <see cref="M:C1.WPF.FlexGrid.C1FlexGrid.StartEditing(System.Boolean,System.Int32,System.Int32)" /> method.</para>
        <para>For more details on advanced editing features such as auto-complete, 
            list selection, and data-mapped columns, see the <see cref="T:C1.WPF.FlexGrid.ColumnValueConverter" />
            class.</para>
      </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.StartEditing(System.Boolean,System.Int32,System.Int32)">
      <summary>
            Starts editing a specific cell.
            </summary>
      <param name="fullEdit">Whether to stay in edit mode when the user presses
            the cursor keys.</param>
      <param name="row">Index of the row that contains the cell to be edited.</param>
      <param name="col">Index of the column that contains the cell to be edited.</param>
      <returns>True if the grid entered edit mode.</returns>
      <remarks>
        <para>Editing in the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> is similar to editing in Excel:</para>
        <para>Pressing F2 or double-clicking a cell puts the grid in <b>full-edit</b> mode. 
            In this mode, the cell editor remains active until the user presses Enter, Tab, 
            or Escape, or until he moves the selection with the mouse. In full-edit mode, 
            pressing the cursor keys does not cause the grid to exit edit mode.</para>
        <para>Typing text directly into a cell puts the grid in <b>quick-edit mode</b>.
            In this mode, the cell editor remains active until the user presses Enter, 
            Tab, or Escape, or any arrow keys. In quick-edit mode, pressing the cursor 
            keys causes the grid to exit edit mode.</para>
        <para>Full-edit mode is normally used to make changes to existing values. 
            Quick-edit mode is normally used for entering new data quickly.</para>
        <para>While editing, the user can toggle between full and quick modes by 
            pressing the F2 key.</para>
        <para>The <paramref name="fullEdit" /> parameter determines whether the grid should
            enter edit mode in full or quick mode.</para>
        <para>For more details on advanced editing features such as auto-complete, 
            list selection, and data-mapped columns, see the <see cref="T:C1.WPF.FlexGrid.ColumnValueConverter" />
            class.</para>
      </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.FinishEditing">
      <summary>
            Commits any pending edits and exits edit mode.
            </summary>
      <returns>True if there were pending edits and they were successfully committed.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.FinishEditing(System.Boolean)">
      <summary>
            Commits or cancels any pending edits and exits edit mode.
            </summary>
      <param name="cancel">Whether pending edits should be canceled or committed.</param>
      <returns>True if there were pending edits and they were successfully canceled or committed.</returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ActiveEditor">
      <summary>
            Gets the cell editor that is currently active.
            </summary>
      <remarks>
        <para>The most common use for this property is to determine whether the
            grid is currently in edit mode. If the grid is not in edit mode, this 
            property returns null.</para>
        <para>In most cases, the <see cref="T:System.Windows.FrameworkElement" /> element returned
            will be a <see cref="T:System.Windows.Controls.Border" /> element that contains the actual cell
            content.</para>
      </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.EditorRange">
      <summary>
            Gets the <see cref="T:C1.WPF.FlexGrid.CellRange" /> that corresponds to the cell currently being edited.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.CreateBoundRow(System.Object)">
      <summary>
            Creates a row bound to a given data item.
            </summary>
      <param name="dataItem">Item that the row represents.</param>
      <returns>A row bound to the given data item.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.CreateBoundRowWithDetails(System.Object)">
      <summary>
            Creates a details row bound to a given data item.
            </summary>
      <param name="dataItem">Item that the row represents.</param>
      <returns>A row bound to the given data item.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.CreateBoundRows">
      <summary>
            Creates rows bound to each data item in the current data source.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.CreateGroupRows(System.Boolean)">
      <summary>
            Creates group rows for the items in the current data source.
            </summary>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.ItemsSourceChanging">
      <summary>
            Occurs when the value of the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ItemsSource" /> property is about to change.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnItemsSourceChanging(System.EventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.ItemsSourceChanging" /> event.
            </summary>
      <param name="e">
        <see cref="T:System.EventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.ItemsSourceChanged">
      <summary>
            Occurs after the value of the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ItemsSource" /> property changes.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnItemsSourceChanged(System.EventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.ItemsSourceChanged" /> event.
            </summary>
      <param name="e">
        <see cref="T:System.EventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.SelectedItemChanged">
      <summary>
            Occurs when the value of the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.SelectedItem" /> property changes.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnSelectedItemChanged(System.EventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.SelectedItemChanged" /> property.
            </summary>
      <param name="e">
        <see cref="T:System.EventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.Click">
      <summary>
            Occurs when the user clicks the mouse over the grid.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnClick(System.Windows.Input.MouseButtonEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.Click" /> event.
            </summary>
      <param name="e">
        <see cref="T:System.Windows.Input.MouseButtonEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.DoubleClick">
      <summary>
            Occurs when the user double-clicks the mouse over the grid.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnDoubleClick(System.Windows.Input.MouseButtonEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.DoubleClick" /> event.
            </summary>
      <param name="e">
        <see cref="T:System.Windows.Input.MouseButtonEventArgs" /> that contains the event data.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnKeyDown(System.Windows.Input.KeyEventArgs)">
      <summary>
            Raises the <see cref="E:System.Windows.UIElement.KeyDown" /> event.
            </summary>
      <param name="e">
        <see cref="T:System.Windows.Input.KeyEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.ScrollPositionChanging">
      <summary>
            Occurs before the value of the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ScrollPosition" /> 
            property changes.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnScrollPositionChanging(System.EventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.ScrollPositionChanging" /> event.
            </summary>
      <param name="e">
        <see cref="T:System.EventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.ScrollPositionChanged">
      <summary>
            Occurs after the value of the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ScrollPosition" /> 
            property changes.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnScrollPositionChanged(System.EventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.ScrollPositionChanged" /> event.
            </summary>
      <param name="e">
        <see cref="T:System.EventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.ScrollingDeferred">
      <summary>
            Occurs when scrolling is deferred while the user drags a scrollbar thumb.
            </summary>
      <remarks>
            Deferred scrolling is enabled by the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.DeferScrolling" /> property. 
            It may improve the perceived performance of the grid by updating it only when 
            the user releases the scrollbar thumb. 
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnScrollingDeferred(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.ScrollingDeferred" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.SelectionChanging">
      <summary>
            Occurs before the value of the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.Selection" /> 
            property changes.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnSelectionChanging(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.SelectionChanging" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.SelectionChanged">
      <summary>
            Occurs after the value of the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.Selection" /> 
            property changes.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnSelectionChanged(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.SelectionChanged" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.SortingColumn">
      <summary>
            Occurs before a column is sorted when the user clicks a column header.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnSortingColumn(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.SortingColumn" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.SortedColumn">
      <summary>
            Occurs after a column is sorted when the user clicks a column header.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnSortedColumn(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.SortedColumn" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.ResizingColumn">
      <summary>
            Occurs when the user starts resizing a column with the mouse.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnResizingColumn(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.ResizingColumn" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.ResizingRow">
      <summary>
            Occurs when the user starts resizing a row with the mouse.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnResizingRow(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.ResizingRow" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.ResizedColumn">
      <summary>
            Occurs when the user finishes resizing a column with the mouse.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnResizedColumn(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.ResizedColumn" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.ResizedRow">
      <summary>
            Occurs when the user finishes resizing a row with the mouse.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnResizedRow(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.ResizedRow" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.DraggedColumn">
      <summary>
            Occurs when the user finishes dragging a column to a new position using the mouse.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnDraggedColumn(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.DraggedColumn" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.DraggedRow">
      <summary>
            Occurs when the user finishes dragging a row to a new position using the mouse.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnDraggedRow(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.DraggedRow" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.DraggingColumn">
      <summary>
            Occurs when the user starts dragging a column to a new position using the mouse.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnDraggingColumn(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.DraggingColumn" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.DraggingRow">
      <summary>
            Occurs when the user starts dragging a row to a new position using the mouse.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnDraggingRow(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.DraggingRow" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.LoadingRows">
      <summary>
            Occurs when the grid starts loading the rows with items from the data source.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnLoadingRows(System.EventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.LoadingRows" /> event.
            </summary>
      <param name="e">
        <see cref="T:System.EventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.LoadedRows">
      <summary>
            Occurs when the grid finishes loading the rows with items from the data source.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnLoadedRows(System.EventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.LoadedRows" /> event.
            </summary>
      <param name="e">
        <see cref="T:System.EventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.GroupCollapsedChanging">
      <summary>
            Occurs before the <see cref="P:C1.WPF.FlexGrid.GroupRow.IsCollapsed" /> property of a <see cref="T:C1.WPF.FlexGrid.GroupRow" /> object changes.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnGroupCollapsedChanging(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.GroupCollapsedChanging" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.GroupCollapsedChanged">
      <summary>
            Occurs after the <see cref="P:C1.WPF.FlexGrid.GroupRow.IsCollapsed" /> property of a <see cref="T:C1.WPF.FlexGrid.GroupRow" /> object changes.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnGroupCollapsedChanged(C1.WPF.FlexGrid.CellRangeEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.GroupCollapsedChanged" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.BeginningEdit">
      <summary>
            Occurs before a cell enters editing mode.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnBeginningEdit(C1.WPF.FlexGrid.CellEditEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.BeginningEdit" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellEditEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.PrepareCellForEdit">
      <summary>
            Occurs when an editor cell is created and before it becomes active.
            </summary>
      <remarks>This event can be used to customize the editor before it becomes active.</remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnPrepareCellForEdit(C1.WPF.FlexGrid.CellEditEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.PrepareCellForEdit" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellEditEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.CellEditEnding">
      <summary>
            Occurs when a cell edit is ending.
            </summary>
      <remarks>
        <para>You can cancel this event by setting the <b>Cancel</b> property of the event argument 
            to true in the event handler.</para>
        <para>If this event is not canceled, the edits will be committed or canceled depending on the
            setting of the <b>CancelEdits</b> property of the event argument.</para>
        <para>After the edit has been successfully committed or canceled, the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.CellEditEnded" /> 
            event occurs.</para>
        <para>By default, you can edit items directly in the grid. To guarantee that edits can be 
            committed and canceled correctly, the objects in the grid must implement the 
            <see cref="T:System.ComponentModel.IEditableObject" /> interface.</para>
        <para>Alternatively, you can set the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.IsReadOnly" /> property to true to 
            disable editing in the grid.</para>
      </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnCellEditEnding(C1.WPF.FlexGrid.CellEditEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.CellEditEnding" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellEditEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.RowEditEnding">
      <summary>
            Occurs when a row edit is ending.
            </summary>
      <remarks>
        <para>You can cancel this event by setting the <b>Cancel</b> property of the event argument 
            to true in the event handler.</para>
        <para>If this event is not canceled, the edits will be committed or canceled depending on the
            setting of the <b>CancelEdits</b> property of the event argument.</para>
        <para>After the edit has been successfully committed or canceled, the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.CellEditEnded" /> 
            event occurs.</para>
        <para>By default, you can edit items directly in the grid. To guarantee that edits can be 
            committed and canceled correctly, the objects in the grid must implement the 
            <see cref="T:System.ComponentModel.IEditableObject" /> interface.</para>
        <para>Alternatively, you can set the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.IsReadOnly" /> property to true to 
            disable editing in the grid.</para>
      </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnRowEditEnding(C1.WPF.FlexGrid.CellEditEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.RowEditEnding" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellEditEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.CellEditEnded">
      <summary>
            Occurs when a cell edit has been committed or canceled.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnCellEditEnded(C1.WPF.FlexGrid.CellEditEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.CellEditEnded" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellEditEventArgs" /> that contains the event data.</param>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexGrid.RowEditEnded">
      <summary>
            Occurs when a row edit has been committed or canceled.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.OnRowEditEnded(C1.WPF.FlexGrid.CellEditEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.RowEditEnded" /> event.
            </summary>
      <param name="e">
        <see cref="T:C1.WPF.FlexGrid.CellEditEventArgs" /> that contains the event data.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.GetDataIndex(System.Int32)">
      <summary>
            Returns index of data item in the items source for the specified row index.
            </summary>
      <remarks>Row indices can be different from data indices as grid might add additional rows at grouping, etc..</remarks>
      <returns>Index of row in the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> control.</returns>
      <returns>Index of data item.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.GetRowIndex(System.Int32)">
      <summary>
            Returns index of row representing data item with the specified index.
            </summary>
      <remarks>Row indices can be different from data indices as grid might add additional rows at grouping, etc..</remarks>
      <param name="dataIndex">Index of data item.</param>
      <returns>Index of row in the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> control.</returns>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.ItemsSourceProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ItemsSource" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ItemsSource">
      <summary>
            Gets or sets a collection that is used to generate the content of the control.
            </summary>
      <remarks>
            The collection must implement the <see cref="T:System.Collections.IEnumerable" /> interface.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ChildItemsPath">
      <summary>
            Gets or sets the name of the property used to generate child rows.
            </summary>
      <remarks>
        <para>This property allows you to use the FlexGrid as a bound <b>TreeView</b>.</para>
        <para>To use it, the data source must contain items that have properties which are 
            collections of the same type.</para>
      </remarks>
      <example>
        <para>For example, assuming you have a Person class with a Children property that 
            contains a list of Person objects, and you want to display the data as a tree.</para>
        <para>You could accomplish that using the following XAML:</para>
        <code>
            &lt;c1:C1FlexGrid 
                AutoGenerateColumns="False" 
                ChildItemsPath="Children" &gt;
                &lt;c1:C1FlexGrid.Columns&gt;
                    &lt;c1:Column Header="Name" Binding="{Binding Name}" Width="*" /&gt;
                    &lt;c1:Column Header="Children" Binding="{Binding Children.Count}" /&gt;
                &lt;/c1:C1FlexGrid.Columns&gt;
            &lt;/c1:C1FlexGrid&gt;
            </code>
        <para>To display the data as a tree, the grid creates <see cref="T:C1.WPF.FlexGrid.GroupRow" /> 
            objects for every item in the collection.</para>
      </example>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.ChildItemsPathProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ChildItemsPath" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.AutoGenerateColumns">
      <summary>
            Gets or sets a value that indicates whether columns are created automatically 
            when the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ItemsSource" /> property is set.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.AutoGenerateColumnsProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AutoGenerateColumns" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.AllowAddNew">
      <summary>
            Gets or sets a value that indicates whether the grid should provide a new row
            template so users can add items to the source collection.
            </summary>
      <remarks>
            Users can only add items when the grid is bound to a data source that supports
            adding new items (IEditableCollectionView.CanAddNew == true).
            </remarks>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.AllowAddNewProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AllowAddNew" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.NewRowPosition">
      <summary>
            Gets or sets a value that indicates whether the new row template should be
            displayed at the bottom or at the top of the grid.
            </summary>
      <remarks>
            This property has an effect only when the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AllowAddNew" /> property
            is set to true and when the grid is bound to a data source that supports
            adding new items (IEditableCollectionView.CanAddNew == true).
            </remarks>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.NewRowPositionProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.NewRowPosition" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.SelectedItem">
      <summary>
            Gets or sets the data item corresponding to the selected row.
            </summary>
      <remarks>
        <para>In unbound mode, there are no data items associated with the rows, and 
            this property always returns null.</para>
        <para>You can get the index of the selected row in bound and unbound modes
            using the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.Selection" /> property.</para>
      </remarks>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.SelectedItemProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.SelectedItem" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.SelectedItems">
      <summary>
            Gets a collection of data items corresponding to the currently selected rows.
            </summary>
      <remarks>
        <para>In unbound mode, there are no data items associated with the rows, and 
            this property always returns null.</para>
        <para>You can get the index of the selected row in bound and unbound modes
            using the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.Selection" /> property.</para>
      </remarks>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.SelectedItemsProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.SelectedItems" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.SelectedIndex">
      <summary>
            Gets or sets the index of the data item corresponding to the selected row.
            </summary>
      <remarks>
        <para>In unbound mode, there are no data items associated with the rows, and 
            this property always returns -1.</para>
        <para>You can get the index of the selected row in bound and unbound modes
            using the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.Selection" /> property.</para>
      </remarks>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.SelectedIndexProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.SelectedIndex" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.IsSynchronizedWithCurrentItem">
      <summary>
            Gets or sets a value that determines whether the control should synchronize the selection
            with the selection in the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ItemsSource" /> property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.IsSynchronizedWithCurrentItemProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.IsSynchronizedWithCurrentItem" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.SelectionMode">
      <summary>
            Gets or sets the grid's selection mode.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.SelectionModeProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.SelectionMode" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.GroupRowPosition">
      <summary>
            Gets or sets a value that indicates where group rows should be displayed with
            respect to the data.
            </summary>
      <remarks>
        <para>Groups are created by data sources that implement the <see cref="T:System.ComponentModel.ICollectionView" />
            interface.</para>
        <para>To create groups, start by creating a data source object that implements
            <see cref="T:System.ComponentModel.ICollectionView" /> (such as <b>PagedCollectionView</b> in Silverlight
            or <b>ListCollectionView</b> in WPF), then add <see cref="T:System.Windows.Data.PropertyGroupDescription" />
            objects to the data source's <see cref="P:System.ComponentModel.ICollectionView.GroupDescriptions" /> collection.</para>
        <para>Once the groups have been defined, the data source will automatically create
            and maintain them, and the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> will display the results.</para>
      </remarks>
      <example>
            The code below creates a data source with grouping and binds it to a <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" />.
            <code>
            // 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></example>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.GroupRowPositionProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.GroupRowPosition" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.TreeIndent">
      <summary>
            Gets or sets the indent used to offset each group of rows in the grid.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.TreeIndentProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.TreeIndent" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.VerticalScrollBarVisibility">
      <summary>
            Gets or sets a value that indicates how the vertical scroll bar is displayed.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.VerticalScrollBarVisibilityProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.VerticalScrollBarVisibility" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.HorizontalScrollBarVisibility">
      <summary>
            Gets or sets a value that indicates how the horizontal scroll bar is displayed.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.HorizontalScrollBarVisibilityProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.HorizontalScrollBarVisibility" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.HeadersVisibility">
      <summary>
            Gets or sets a value that indicates the visibility of row and column headers.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.HeadersVisibilityProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.HeadersVisibility" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.AreRowGroupHeadersFrozen">
      <summary>
            Gets or sets a value that indicates whether the row group header sections 
            remain fixed at the width of the display area or can scroll horizontally.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.AreRowGroupHeadersFrozenProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AreRowGroupHeadersFrozen" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.MinColumnWidth">
      <summary>
            Gets or sets the minimum width of columns in the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" />.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.MinColumnWidthProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.MinColumnWidth" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.MaxColumnWidth">
      <summary>
            Gets or sets the maximum width of columns in the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" />.
            </summary>
      <remarks>Setting this value to zero disables the maximum column width limit.</remarks>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.MaxColumnWidthProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.MaxColumnWidth" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.MinRowHeight">
      <summary>
            Gets or sets the minimum height of rows in the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" />.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.MinRowHeightProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.MinRowHeight" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.MaxRowHeight">
      <summary>
            Gets or sets the maximum height of rows in the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" />.
            </summary>
      <remarks>Setting this value to zero disables the maximum row height limit.</remarks>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.MaxRowHeightProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.MaxRowHeight" /> dependency property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.RowDetailsTemplate">
      <summary>
            Gets or sets the <see cref="T:System.Windows.DataTemplate" /> used to present the details part of a row.
            </summary>
      <remarks>
            See <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.RowDetailsVisibilityMode" /> to set the way the details of each row are shown.
            This property won't take affect if <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ChildItemsPath" /> property is set.
            </remarks>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.RowDetailsTemplateProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.RowDetailsTemplate" /> dependency property. 
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.RowDetailsVisibilityMode">
      <summary>
            The details part can be automatically opened when the row is selected, can be always visible, or can be always collapsed.
            </summary>
      <remarks>
            The details can be expanded by code using the property DetailsVisibility in the <see cref="T:System.Windows.Controls.DataGridRow" />, or manually by pressing the toggle button located inside the row headers.
            </remarks>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.RowDetailsVisibilityModeProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.RowDetailsVisibilityMode" /> dependency property. 
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.AreRowDetailsFrozen">
      <summary>
            Gets or sets a value that indicates whether the row details 
            remain fixed at the width of the display area or can scroll horizontally.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.AreRowDetailsFrozenProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AreRowDetailsFrozen" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.AllowMergingProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AllowMerging" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.AllowSortingProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AllowSorting" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.ShowSortProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ShowSort" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.NewRowBackgroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.NewRowBackground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.DeferScrollingProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.DeferScrolling" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.AllowResizingProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AllowResizing" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.AllowDraggingProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AllowDragging" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.KeyActionEnterProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.KeyActionEnter" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.KeyActionTabProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.KeyActionTab" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.ClipboardCopyModeProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ClipboardCopyMode" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.ClipboardPasteModeProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ClipboardPasteMode" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.IsReadOnlyProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.IsReadOnly" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.ShowMarqueeProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ShowMarquee" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.KeepCurrentVisibleProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.KeepCurrentVisible" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.GridLinesVisibilityProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.GridLinesVisibility" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.RowBackgroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.RowBackground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.AlternatingRowBackgroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AlternatingRowBackground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.GridLinesBrushProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.GridLinesBrush" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.FrozenLinesBrushProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.FrozenLinesBrush" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.HeaderGridLinesBrushProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.HeaderGridLinesBrush" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.HeaderFontWeightProperty">
      <summary>
            Identifies the <see cref="F:C1.WPF.FlexGrid.C1FlexGrid.HeaderFontWeightProperty" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.ColumnHeaderBackgroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ColumnHeaderBackground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.ColumnHeaderForegroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ColumnHeaderForeground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.RowHeaderBackgroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.RowHeaderBackground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.RowHeaderForegroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.RowHeaderForeground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.ColumnHeaderSelectedBackgroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ColumnHeaderSelectedBackground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.RowHeaderSelectedBackgroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.RowHeaderSelectedBackground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.TopLeftCellBackgroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.TopLeftCellBackground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.GroupRowBackgroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.GroupRowBackground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.GroupRowForegroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.GroupRowForeground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.CursorBackgroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.CursorBackground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.CursorForegroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.CursorForeground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.SelectionBackgroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.SelectionBackground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.SelectionForegroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.SelectionForeground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.EditorBackgroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.EditorBackground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.EditorForegroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.EditorBackground" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.MarqueeColorProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.MarqueeColor" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.GroupHeaderConverterProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.GroupHeaderConverter" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.ShowOutlineBarProperty">
      <summary>
            Identifies the <see cref="F:C1.WPF.FlexGrid.C1FlexGrid.ShowOutlineBarProperty" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.ShowErrorsProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ShowErrors" /> dependency property.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.AutoCompleteProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AutoComplete" /> dependency property.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Invalidate">
      <summary>
            Forces the grid to re-create all visible elements.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Invalidate(System.Boolean)">
      <summary>
            Forces the grid to re-create all visible elements.
            </summary>
      <param name="allCells">Whether to recreate all cells, including
            the top left and bottom right corner cells that contain no data.
            </param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Invalidate(C1.WPF.FlexGrid.CellRange)">
      <summary>
            Forces the grid to re-create the elements in a given <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Save(System.IO.StreamWriter,C1.WPF.FlexGrid.FileFormat,C1.WPF.FlexGrid.SaveOptions)">
      <summary>
            Saves the contents of the grid to a <see cref="T:System.IO.StreamWriter" />.
            </summary>
      <param name="sw">
        <see cref="T:System.IO.StreamWriter" /> where the contents will be saved.</param>
      <param name="format">
        <see cref="T:C1.WPF.FlexGrid.FileFormat" /> value that specifies the format used to save the file.</param>
      <param name="options">
        <see cref="T:C1.WPF.FlexGrid.SaveOptions" /> value that specifies options to use when saving the file.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Save(System.IO.Stream,C1.WPF.FlexGrid.FileFormat,System.Text.Encoding,C1.WPF.FlexGrid.SaveOptions)">
      <summary>
            Saves the contents of the grid to a stream.
            </summary>
      <param name="stream">
        <see cref="T:System.IO.Stream" /> where the contents will be saved.</param>
      <param name="format">
        <see cref="T:C1.WPF.FlexGrid.FileFormat" /> value that specifies the format used to save the file.</param>
      <param name="encoding">
        <see cref="T:System.Text.Encoding" /> value that specifies the encoding for the file.</param>
      <param name="options">
        <see cref="T:C1.WPF.FlexGrid.SaveOptions" /> value that specifies options to use when saving the file.</param>
      <remarks>
            The caller is responsible for closing the <see cref="T:System.IO.Stream" />.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Save(System.IO.Stream,C1.WPF.FlexGrid.FileFormat,C1.WPF.FlexGrid.SaveOptions)">
      <summary>
            Saves the contents of the grid to an UTF8-encoded stream.
            </summary>
      <param name="stream">
        <see cref="T:System.IO.Stream" /> where the contents will be saved.</param>
      <param name="format">
        <see cref="T:C1.WPF.FlexGrid.FileFormat" /> value that specifies the format used to save the file.</param>
      <param name="options">
        <see cref="T:C1.WPF.FlexGrid.SaveOptions" /> value that specifies options to use when saving the file.</param>
      <remarks>
            The caller is responsible for closing the <see cref="T:System.IO.Stream" />.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Save(System.IO.Stream,C1.WPF.FlexGrid.FileFormat)">
      <summary>
            Saves the contents of the grid to an UTF8-encoded stream.
            </summary>
      <param name="stream">
        <see cref="T:System.IO.Stream" /> where the contents will be saved.</param>
      <param name="format">
        <see cref="T:C1.WPF.FlexGrid.FileFormat" /> value that specifies the format used to save the file.</param>
      <remarks>
            The caller is responsible for closing the <see cref="T:System.IO.Stream" />.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Save(System.String,C1.WPF.FlexGrid.FileFormat,System.Text.Encoding,C1.WPF.FlexGrid.SaveOptions)">
      <summary>
            Saves the contents of the grid to a file.
            </summary>
      <param name="fileName">Name of the file to save.</param>
      <param name="format">
        <see cref="T:C1.WPF.FlexGrid.FileFormat" /> value that specifies the format used to save the file.</param>
      <param name="encoding">
        <see cref="T:System.Text.Encoding" /> value that specifies the encoding for the file.</param>
      <param name="options">
        <see cref="T:C1.WPF.FlexGrid.SaveOptions" /> value that specifies options to use when saving the file.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Save(System.String,C1.WPF.FlexGrid.FileFormat,C1.WPF.FlexGrid.SaveOptions)">
      <summary>
            Saves the contents of the grid to an UTF8-encoded file.
            </summary>
      <param name="fileName">Name of the file to save.</param>
      <param name="format">
        <see cref="T:C1.WPF.FlexGrid.FileFormat" /> value that specifies the format used to save the file.</param>
      <param name="options">
        <see cref="T:C1.WPF.FlexGrid.SaveOptions" /> value that specifies options to use when saving the file.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Save(System.String,C1.WPF.FlexGrid.FileFormat)">
      <summary>
            Saves the contents of the grid to an UTF8-encoded file.
            </summary>
      <param name="fileName">Name of the file to save.</param>
      <param name="format">
        <see cref="T:C1.WPF.FlexGrid.FileFormat" /> value that specifies the format used to save the file.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Print(System.String)">
      <summary>
            Prints the grid.
            </summary>
      <param name="docName">Name of the document to print.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.Print(System.String,C1.WPF.FlexGrid.ScaleMode,System.Windows.Thickness,System.Int32)">
      <summary>
            Prints the grid using a specified scale mode.
            </summary>
      <param name="docName">Name of the document to print.</param>
      <param name="scaleMode">How to scale the document to fit the pages.</param>
      <param name="margin">Margin around the page in pixels.</param>
      <param name="maxPages">The maximum number of pages to print.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.GetPageImages(C1.WPF.FlexGrid.CellRange,C1.WPF.FlexGrid.ScaleMode,System.Windows.Size,System.Int32)">
      <summary>
            Gets a list of elements that represent parts of the grid fit for rendering
            into pages of a document.
            </summary>
      <param name="rng">Range of cells to print.</param>
      <param name="scaleMode">How to scale the grid to fit on the pages.</param>
      <param name="pageSize">Size of the pages in pixels.</param>
      <param name="maxPages">Maximum number of pages to return.</param>
      <returns>A list with elements that correspond to the pages.</returns>
      <remarks>
        <para>The elements returned in the list represent portions of the grid 
            that correspond to individual pages in a document.</para>
        <para>The <paramref name="scaleMode" /> and <paramref name="pageSize" />
            parameters define how many pages are returned and the data contained
            in each page.</para>
        <para>The elements returned in the list may be rendered directly into
            the document (by assigning them to the <b>PageVisual</b> property of the
            <b>PrintPage</b> event parameter), or they may be combined with other
            elements in a template to provide a letterhead, headers, footers, and
            additional document content.</para>
      </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.GetPageImages(C1.WPF.FlexGrid.ScaleMode,System.Windows.Size,System.Int32)">
      <summary>
            Gets a list of elements that represent parts of the grid fit for rendering
            into pages of a document.
            </summary>
      <param name="scaleMode">How to scale the grid to fit on the pages.</param>
      <param name="pageSize">Size of the pages in pixels.</param>
      <param name="maxPages">Maximum number of pages to return.</param>
      <returns>A list with elements that correspond to the pages.</returns>
      <remarks>
        <para>The elements returned in the list represent portions of the grid 
            that correspond to individual pages in a document.</para>
        <para>The <paramref name="scaleMode" /> and <paramref name="pageSize" />
            parameters define how many pages are returned and the data contained
            in each page.</para>
        <para>The elements returned in the list may be rendered directly into
            the document (by assigning them to the <b>PageVisual</b> property of the
            <b>PrintPage</b> event parameter), or they may be combined with other
            elements in a template to provide a letterhead, headers, footers, and
            additional document content.</para>
      </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.GetGridImage(C1.WPF.FlexGrid.CellRange)">
      <summary>
            Gets a <see cref="T:System.Windows.FrameworkElement" /> that represents a given part of the grid.
            </summary>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> to include in the image.</param>
      <returns>A <see cref="T:System.Windows.FrameworkElement" /> that represents a given part of the grid.</returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ActiveFilterIconTemplate">
      <summary>
            Gets or sets the <see cref="T:C1.WPF.C1IconTemplate" /> used to present the active filter icon when the column is not filtered.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.ActiveFilterIconTemplateProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ActiveFilterIconTemplate" /> dependency property. 
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.InactiveFilterIconTemplate">
      <summary>
            Gets or sets the <see cref="T:C1.WPF.C1IconTemplate" /> used to present the inactive filter icon when the column is filtered.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.InactiveFilterIconTemplateProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.InactiveFilterIconTemplate" /> dependency property. 
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.ScrollPosition">
      <summary>
            Gets or sets a value that represents the value of the grid scroll bars.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.ScrollIntoView(System.Int32,System.Int32)">
      <summary>
            Scrolls the grid to bring a specific cell into view.
            </summary>
      <param name="row">Index of the row to scroll into view.</param>
      <param name="col">Index of the column to scroll into view.</param>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexGrid.BottomRightCellBackground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> that is used to paint the background of the 
            cell at the bottom right corner of the grid.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.C1FlexGrid.BottomRightCellBackgroundProperty">
      <summary>
            Identifies the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.BottomRightCellBackground" /> dependency property.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexGrid.ArrangeOverride(System.Windows.Size)">
      <summary>
            Provides the behavior for the <b>arrange</b> part of the control layout.
            </summary>
      <param name="finalSize">The size of the control available for use in the layout logic.</param>
      <returns>The actual size used.</returns>
    </member>
    <member name="T:C1.WPF.FlexGrid.GridPanel">
      <summary>
            Represents a logical part of the grid, such as the column headers, row headers,
            and scrollable data part.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.GridPanel.OnCreateAutomationPeer">
      <summary>
            Gets an AutomationPeer object used for testing the control.
            </summary>
      <returns>An AutomationPeer object used for testing the control.</returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.GridPanel.Grid">
      <summary>
            Gets the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns this <see cref="T:C1.WPF.FlexGrid.GridPanel" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.GridPanel.Rows">
      <summary>
            Gets the collection of rows in this <see cref="T:C1.WPF.FlexGrid.GridPanel" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.GridPanel.Columns">
      <summary>
            Gets the collection of columns in this <see cref="T:C1.WPF.FlexGrid.GridPanel" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.GridPanel.CellType">
      <summary>
            Gets the type of cell that this panel contains.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.GridPanel.HitTest(System.Windows.RoutedEventArgs)">
      <summary>
            Gets a <see cref="T:C1.WPF.FlexGrid.HitTestInfo" /> object that contains information about this
            <see cref="T:C1.WPF.FlexGrid.GridPanel" /> at a given location.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.GridPanel.AutoSizeColumn(System.Int32,System.Double,System.Boolean)">
      <summary>
            Resizes a column to fit its visible contents.
            </summary>
      <param name="col">Index of the column to resize.</param>
      <param name="extra">Extra width to add to the column in pixels.</param>
      <param name="allCells">Whether to measure all cells or only the visible ones.</param>
      <returns>The new column width in pixels.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.GridPanel.AutoSizeRow(System.Int32,System.Double,System.Boolean)">
      <summary>
            Resizes a row to fit its visible contents.
            </summary>
      <param name="row">Index of the row to resize.</param>
      <param name="extra">Extra height to add to the row in pixels.</param>
      <param name="allCells">Whether to measure all cells or only the visible ones.</param>
      <returns>The new row height in pixels.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.GridPanel.GetCellRect(C1.WPF.FlexGrid.CellRange)">
      <summary>
            Gets a rectangle that represents the position of a <see cref="T:C1.WPF.FlexGrid.CellRange" /> on
            the panel.
            </summary>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> to locate.</param>
      <returns>A rectangle that represents the position of the cell range.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.GridPanel.GetCellRect(System.Int32,System.Int32)">
      <summary>
            Gets a rectangle that represents the position of a cell on the panel.
            </summary>
      <param name="row">Index of the cell row.</param>
      <param name="col">Index of the cell column.</param>
      <returns>A rectangle that represents the position of the cell.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.GridPanel.GetCellElement(C1.WPF.FlexGrid.CellRange)">
      <summary>
            Gets the <see cref="T:System.Windows.FrameworkElement" /> used to represent a cell on the panel.
            </summary>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> to locate.</param>
      <returns>A <see cref="T:System.Windows.FrameworkElement" /> used to represent a cell on the panel.</returns>
      <remarks>
        <para>The default class factory uses <see cref="T:System.Windows.Controls.Border" /> elements to represent
            all cells. The border is responsible for rendering the cell's background color and 
            the gridlines. The border contains the elements that represent the cell's actual
            content. In most cases, the border child is a simple <see cref="T:System.Windows.Controls.TextBlock" /> or 
            <see cref="T:System.Windows.Controls.CheckBox" />element that displays the cell content. Cells that contain
            text and graphics (e.g. sorted column headers and group rows) host a 
            <see cref="P:C1.WPF.FlexGrid.GridPanel.Grid" /> element that contains the text and graphics elements.</para>
        <para>This method can be useful in cases where you want to customize a cell after it has
            been created by the cell factory.</para>
        <para>This method returns null if the requested range is not within the current view
            (see the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ViewRange" /> property), or if the requested range does 
            not match exactly the range represented by the cell (if the range is merged for example).</para>
      </remarks>
      <example>
            The code below turns the selected cells red:
            <code>
            // loop through the cells in the current selection
            foreach (var cell in _flex.Selection.Cells)
            {
              // get element used to represent the cell
              var bdr = _flex.Cells.GetCellElement(cell) as Border;
              if (bdr != null)
              {
                // make it red
                bdr.Background = new SolidColorBrush(Colors.Red);
              }
            }
            </code></example>
    </member>
    <member name="P:C1.WPF.FlexGrid.GridPanel.Item(System.Int32,C1.WPF.FlexGrid.Column)">
      <summary>
            Gets or sets the value of a specific cell.
            </summary>
      <param name="row">Index of the row that contains the cell.</param>
      <param name="col">
        <see cref="T:C1.WPF.FlexGrid.Column" /> that contains the cell.</param>
      <returns>The value of the cell.</returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.GridPanel.Item(System.Int32,System.Int32)">
      <summary>
            Gets or sets the value of a specific cell.
            </summary>
      <param name="row">Index of the row that contains the cell.</param>
      <param name="col">Index of the column that contains the cell.</param>
      <returns>The value of the cell.</returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.GridPanel.Item(System.Int32,System.String)">
      <summary>
            Gets or sets the value of a specific cell.
            </summary>
      <param name="row">Index of the row that contains the cell.</param>
      <param name="colName">
        <see cref="P:C1.WPF.FlexGrid.Column.ColumnName" /> of the column that contains the cell.</param>
      <returns>The value of the cell.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.GridPanel.GetDataFormatted(System.Int32,System.Int32)">
      <summary>
            Gets or sets the formatted content of a specific cell.
            </summary>
      <param name="row">Index of the row that contains the cell.</param>
      <param name="col">Index of the column that contains the cell.</param>
      <returns>The formatted value of the cell.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.GridPanel.GetDataRaw(System.Int32,System.Int32)">
      <summary>
            Gets or sets the raw content of a specific cell.
            </summary>
      <param name="row">Index of the row that contains the cell.</param>
      <param name="col">Index of the column that contains the cell.</param>
      <returns>The formatted value of the cell.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.GridPanel.Invalidate">
      <summary>
            Forces the grid panel to re-create all visible elements.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.GridPanel.Invalidate(C1.WPF.FlexGrid.CellRange)">
      <summary>
            Forces the grid panel to re-create the elements in a given <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.GridPanel.MeasureOverride(System.Windows.Size)">
      <summary>
            Provides the behavior for the <b>measure</b> part of the control layout.
            </summary>
      <param name="availableSize">The size of the control available for use in the layout logic.</param>
      <returns>The size that this element determines it needs during layout, based on its calculations of child element sizes.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.GridPanel.ArrangeOverride(System.Windows.Size)">
      <summary>
            Provides the behavior for the <b>arrange</b> part of the control layout.
            </summary>
      <param name="finalSize">The size of the control available for use in the layout logic.</param>
      <returns>The actual size used.</returns>
    </member>
    <member name="T:C1.WPF.FlexGrid.C1FlexComboBox">
      <summary>
            ComboBox that looks the same in WPF and Silverlight and implements the 
            <see cref="P:C1.WPF.FlexGrid.C1FlexComboBox.IsEditable" /> property in both platforms 
            (the Silverlight ComboBox is not editable).
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexComboBox.OnCreateAutomationPeer">
      <summary>
            Gets an AutomationPeer object used for testing the control.
            </summary>
      <returns>An AutomationPeer object used for testing the control.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexComboBox.#ctor">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.C1FlexComboBox" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexComboBox.DropDownItems">
      <summary>
            Gets or sets the list of items to show in the dropdown list.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexComboBox.SelectedIndex">
      <summary>
            Gets or sets the index of the item that is currently selected on the list.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexComboBox.IsDroppedDown">
      <summary>
            Indicates whether the dropdown is currently being displayed.
            </summary>
    </member>
    <member name="E:C1.WPF.FlexGrid.C1FlexComboBox.IsDroppedDownChanged">
      <summary>
            Occurs when the value of the <see cref="P:C1.WPF.FlexGrid.C1FlexComboBox.IsDroppedDown" /> property changes.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexComboBox.OnIsDroppedDownChanged(System.EventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.C1FlexComboBox.IsDroppedDownChanged" /> event.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexComboBox.MaxDropDownHeight">
      <summary>
            Gets or sets the maximum height of the dropdown in pixels.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexComboBox.IsEditable">
      <summary>
            Gets or sets a value that determines whether the textbox is
            editable or restricted to the items in the <see cref="P:C1.WPF.FlexGrid.C1FlexComboBox.DropDownItems" /> 
            collection.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexComboBox.IsDropDownEnabled">
      <summary>
            Gets or sets whether the user should be allowed to open the drop-down 
            portion of the control.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.C1FlexComboBox.ListBox">
      <summary>
            Gets a reference to the <see cref="P:C1.WPF.FlexGrid.C1FlexComboBox.ListBox" /> used to display the drop-down items.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexComboBox.OnApplyTemplate">
      <summary>
            Overridden to remove focus/mouse borders and add dropdown button
            to regular <see cref="T:System.Windows.Controls.TextBox" /> template.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.C1FlexComboBox.OnLostFocus(System.Windows.RoutedEventArgs)">
      <summary>
            Overridden to close the drop-down when losing focus.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.HeadersVisibility">
      <summary>
            Specifies constants that define which header cells are displayed.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.HeadersVisibility.None">
      <summary>
            No header cells are displayed.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.HeadersVisibility.Column">
      <summary>
            Only column header cells are displayed.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.HeadersVisibility.Row">
      <summary>
            Only row header cells are displayed.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.HeadersVisibility.All">
      <summary>
            Both column and row header cells are displayed.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.GridLinesVisibility">
      <summary>
            Specifies constants that define which grid lines separating grid cells
            cells are shown.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.GridLinesVisibility.None">
      <summary>
            No grid lines are shown.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.GridLinesVisibility.Horizontal">
      <summary>
            Only horizontal grid lines, which separate rows, are shown.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.GridLinesVisibility.Vertical">
      <summary>
            Only vertical grid lines, which separate columns, are shown.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.GridLinesVisibility.All">
      <summary>
            Both horizontal and vertical grid lines are shown.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.AllowMerging">
      <summary>
            Specifies constants that define which areas of the grid support cell merging.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowMerging.None">
      <summary>
            No merging.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowMerging.Cells">
      <summary>
            Merge scrollable cells.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowMerging.ColumnHeaders">
      <summary>
            Merge column headers.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowMerging.RowHeaders">
      <summary>
            Merge row headers.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowMerging.ColumnFooters">
      <summary>
            Merge column footers.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowMerging.AllHeaders">
      <summary>
            Merge column and row headers.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowMerging.All">
      <summary>
            Merge all areas.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.ClipboardCopyMode">
      <summary>
            Defines constants that specify whether users can copy data from a <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> 
            control to the clipboard and whether column header values are included.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.ClipboardCopyMode.None">
      <summary>
            Clipboard support is disabled.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.ClipboardCopyMode.ExcludeHeader">
      <summary>
            Users can copy the text values of selected cells to the Clipboard; row and column header 
            values are not included.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.ClipboardCopyMode.IncludeAllHeaders">
      <summary>
            Users can copy the text values of selected cells to the Clipboard; row and column header 
            values are included.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.ClipboardCopyMode.IncludeColumnHeaders">
      <summary>
            Users can copy the text values of selected cells to the Clipboard; column header 
            values are included.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.ClipboardCopyMode.IncludeRowHeaders">
      <summary>
            Users can copy the text values of selected cells to the Clipboard; row header
            values are included.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.Aggregate">
      <summary>
            Specifies the type of aggregate to calculate over a group of values.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.Aggregate.None">
      <summary>
            No aggregate.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.Aggregate.Sum">
      <summary>
            Returns the sum of all values in the group.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.Aggregate.Count">
      <summary>
            Returns the count of non-null values in the group.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.Aggregate.Average">
      <summary>
            Returns the average value of the non-null cells in the group.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.Aggregate.Maximum">
      <summary>
            Returns the maximum value in the group.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.Aggregate.Minimum">
      <summary>
            Returns the minimum value in the group.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.Aggregate.Range">
      <summary>
            Returns the difference between the maximum and minimum values in the group.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.Aggregate.Std">
      <summary>
            Returns the sample standard deviation of the values in the group (uses the formula based on n-1).
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.Aggregate.Var">
      <summary>
            Returns the sample variance of the values in the group (uses the formula based on n-1).
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.Aggregate.StdPop">
      <summary>
            Returns the population standard deviation of the values in the group (uses the formula based on n).
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.Aggregate.VarPop">
      <summary>
            Returns the population variance of the values in the group (uses the formula based on n).
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.Aggregate.Custom">
      <summary>
            Raise the <b>CustomAggregate</b> event to calculate custom aggregates.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.GroupRowPosition">
      <summary>
            Specifies where to place the group rows used to delimit data groups.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.GroupRowPosition.AboveData">
      <summary>
            Place group rows above the data.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.GroupRowPosition.BelowData">
      <summary>
            Place group rows below the data.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.GroupRowPosition.None">
      <summary>
            Do not show group rows.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.DeferScrolling">
      <summary>
            Specifies whether the grid should defer scrolling until the user releases the scrollbar thumb.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.DeferScrolling.None">
      <summary>
            Do not defer scrolling.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.DeferScrolling.DeferVertical">
      <summary>
            Defer scrolling in the vertical direction.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.DeferScrolling.DeferHorizontal">
      <summary>
            Defer scrolling in the horizontal direction.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.DeferScrolling.DeferBoth">
      <summary>
            Defer scrolling in both directions.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.NewRowPosition">
      <summary>
            Specifies where the new row template should be displayed when the 
            <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AllowAddNew" /> property is set to true and the grid is 
            bound to a <see cref="T:System.ComponentModel.IEditableCollectionView" /> that supports adding new items.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.NewRowPosition.Bottom">
      <summary>
            The new row template is displayed at the bottom of the grid.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.NewRowPosition.Top">
      <summary>
            The new row template is displayed at the top of the grid.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.GroupHeaderConverter">
      <summary>
            Default <see cref="T:System.Windows.Data.IValueConverter" /> used to create the content shown
            in <see cref="T:C1.WPF.FlexGrid.GroupRow" /> cells to summarize group information.
            </summary>
      <remarks>
            To display custom information in group rows, create a class that implements
            the <see cref="T:System.Windows.Data.IValueConverter" /> interface and assign an instance of this class
            to the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.GroupHeaderConverter" /> property.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.GroupHeaderConverter.NullEmptyString">
      <summary>
            Gets or sets a value to be displayed in group headers to represent empty strings or null values.
            <para>
            By default, this property is set to empty string.
            </para></summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.GroupHeaderConverter.Convert(System.Object,System.Type,System.Object,System.Globalization.CultureInfo)">
      <summary>
            Converts a <see cref="T:C1.WPF.FlexGrid.GroupRow" /> objects into a string containing summary information for the group.
            </summary>
      <param name="value">
        <see cref="T:System.Windows.Data.CollectionViewGroup" /> value produced by the binding source.</param>
      <param name="targetType">The type of the binding target property.</param>
      <param name="parameter">
        <see cref="T:C1.WPF.FlexGrid.GroupRow" /> that represents the group.</param>
      <param name="culture">The culture to use in the converter.</param>
      <returns>A string containing summary information for the group.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.GroupHeaderConverter.ConvertBack(System.Object,System.Type,System.Object,System.Globalization.CultureInfo)">
      <summary>
            This method is not used.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.CellType">
      <summary>
            Specifies a value that defines the type of cell.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.CellType.None">
      <summary>
            Not a valid cell type.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.CellType.Cell">
      <summary>
            Regular data cell.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.CellType.ColumnHeader">
      <summary>
            Column header cell.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.CellType.RowHeader">
      <summary>
            Row header cell.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.CellType.TopLeft">
      <summary>
            Top left cell (at the intersection of the row and column header cells).
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.CellType.BottomRight">
      <summary>
            Bottom right cell (at the intersection of the horizontal and vertical scrollbars).
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.CellType.ColumnFooter">
      <summary>
            Column footer cell.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.CellType.BottomLeft">
      <summary>
            Bottom left cell (at the intersection of the row header and column footer cells).
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.ICustomCellRender">
      <summary>
            Determine the exact size for custom cell content.
            By default, the cell will try to get size by formatted text content and it increase performance.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.ICellFactory">
      <summary>
            Defines the functionality of classes used to create grid cells dynamically.
            </summary>
      <remarks>
            The <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> fully virtualizes rows and columns. Cells are created
            only when their row and column are visible to the user. In this case, a class that
            implements the <b>ICellFactory</b> interface is used to create the <see cref="T:System.Windows.FrameworkElement" />
            objects that represent the cells. When cells are scrolled out of view, the same
            class is notified so it can properly dispose of the cell or recycle it for future use.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.ICellFactory.CreateCell(C1.WPF.FlexGrid.C1FlexGrid,C1.WPF.FlexGrid.CellType,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Creates a <see cref="T:System.Windows.FrameworkElement" /> responsible for representing a grid
            cell of a given type at the given coordinates.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="cellType">
        <see cref="T:C1.WPF.FlexGrid.CellType" /> that specifies the type of cell to be created.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
      <returns>A new <see cref="T:System.Windows.FrameworkElement" /> responsible for representing the grid cell.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.ICellFactory.CreateCellEditor(C1.WPF.FlexGrid.C1FlexGrid,C1.WPF.FlexGrid.CellType,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Creates a <see cref="T:System.Windows.FrameworkElement" /> responsible for editing the value in a grid
            cell at the given coordinates.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="cellType">
        <see cref="T:C1.WPF.FlexGrid.CellType" /> that specifies the type of cell to be created.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
      <returns>A new <see cref="T:System.Windows.FrameworkElement" /> responsible for representing the grid cell.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.ICellFactory.DisposeCell(C1.WPF.FlexGrid.C1FlexGrid,C1.WPF.FlexGrid.CellType,System.Windows.FrameworkElement)">
      <summary>
            Disposes of a <see cref="T:System.Windows.FrameworkElement" /> when its associated cell is scrolled
            out of view.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="cellType">
        <see cref="T:C1.WPF.FlexGrid.CellType" /> that specifies the type of cell to be created.</param>
      <param name="cell">
        <see cref="T:System.Windows.FrameworkElement" /> to be disposed of.</param>
    </member>
    <member name="T:C1.WPF.FlexGrid.CellFactory">
      <summary>
            Class that implements the default cell factory for a <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" />.
            </summary>
      <remarks>
            If you need to create custom cells, then you have to create a class that implements 
            the <see cref="T:C1.WPF.FlexGrid.ICellFactory" /> interface and assign an instance of that class to the
            <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.CellFactory" /> property.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.CreateCell(C1.WPF.FlexGrid.C1FlexGrid,C1.WPF.FlexGrid.CellType,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Creates a <see cref="T:System.Windows.FrameworkElement" /> responsible for representing a grid
            cell of a given type at the given coordinates.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="cellType">
        <see cref="T:C1.WPF.FlexGrid.CellType" /> that specifies the type of cell to be created.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
      <returns>A new <see cref="T:System.Windows.FrameworkElement" /> responsible for representing the grid cell.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.CreateCellEditor(C1.WPF.FlexGrid.C1FlexGrid,C1.WPF.FlexGrid.CellType,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Creates a <see cref="T:System.Windows.FrameworkElement" /> responsible for editing the value in a grid
            cell at the given coordinates.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="cellType">
        <see cref="T:C1.WPF.FlexGrid.CellType" /> that specifies the type of cell to be created.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
      <returns>A new <see cref="T:System.Windows.FrameworkElement" /> responsible for representing the grid cell.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.ApplyCellStyles(C1.WPF.FlexGrid.C1FlexGrid,C1.WPF.FlexGrid.CellType,C1.WPF.FlexGrid.CellRange,System.Windows.Controls.Border)">
      <summary>
            Allows derived classes to finish customizing cells after they have been 
            created and all styles have been applied.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="cellType">
        <see cref="T:C1.WPF.FlexGrid.CellType" /> that specifies the type of cell to be created.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
      <param name="bdr">
        <see cref="T:System.Windows.Controls.Border" /> element that represents the cell.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.DisposeCell(C1.WPF.FlexGrid.C1FlexGrid,C1.WPF.FlexGrid.CellType,System.Windows.FrameworkElement)">
      <summary>
            Disposes of a <see cref="T:System.Windows.FrameworkElement" /> when its associated cell is scrolled
            out of view.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="cellType">
        <see cref="T:C1.WPF.FlexGrid.CellType" /> that specifies the type of cell to be created.</param>
      <param name="cell">
        <see cref="T:System.Windows.FrameworkElement" /> to be disposed of.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.CreateCellBorder(C1.WPF.FlexGrid.C1FlexGrid,C1.WPF.FlexGrid.CellType,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Creates a <see cref="T:System.Windows.Controls.Border" /> element that represents the background and 
            border of a grid cell and contains the cell data.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="cellType">
        <see cref="T:C1.WPF.FlexGrid.CellType" /> that specifies the type of cell to be created.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
      <returns>A <see cref="T:System.Windows.Controls.Border" /> element that represents the background and 
            border of a grid cell.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.GetCellPadding(C1.WPF.FlexGrid.C1FlexGrid,C1.WPF.FlexGrid.GridPanel,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Gets a <see cref="T:System.Windows.Thickness" /> value that specifies the padding applied between
            the edge of the cell and its content area.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="panel">
        <see cref="T:C1.WPF.FlexGrid.GridPanel" /> that specifies the part of the grid that contains the cell.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
      <returns>A <see cref="T:System.Windows.Thickness" /> value that specifies the padding applied between
            the edge of the cell and its content area.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.GetBorderThickness(C1.WPF.FlexGrid.C1FlexGrid,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Gets a <see cref="T:System.Windows.Thickness" /> value that represents the thickness of the cell borders.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
      <returns>A <see cref="T:System.Windows.Thickness" /> value that represents the thickness of the cell borders.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.CreateColumnHeaderContent(C1.WPF.FlexGrid.C1FlexGrid,System.Windows.Controls.Border,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Sets the content of a <see cref="T:System.Windows.Controls.Border" /> element used to display the value of a column header cell.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="bdr">
        <see cref="T:System.Windows.Controls.Border" /> element that contains the header.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.IsSortSymbolRow(C1.WPF.FlexGrid.C1FlexGrid,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Gets a value that determines whether to display sort symbols on a given a column header row.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that contains the column header row.</param>
      <returns>True if the sort symbols should be displayed on the row given by the 
            <paramref name="rng" /> parameter.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.CreateRowHeaderContent(C1.WPF.FlexGrid.C1FlexGrid,System.Windows.Controls.Border,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Sets the content of a <see cref="T:System.Windows.Controls.Border" /> element used to display the value of a row header cell.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="bdr">
        <see cref="T:System.Windows.Controls.Border" /> element that contains the header.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.CreateTopLeftContent(C1.WPF.FlexGrid.C1FlexGrid,System.Windows.Controls.Border,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Sets the content of a <see cref="T:System.Windows.Controls.Border" /> element used to display the value of a row header cell.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="bdr">
        <see cref="T:System.Windows.Controls.Border" /> element that contains the header.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.CreateCellContent(C1.WPF.FlexGrid.C1FlexGrid,System.Windows.Controls.Border,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Sets the content of a <see cref="T:System.Windows.Controls.Border" /> element used to display the value of a data cell.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="bdr">
        <see cref="T:System.Windows.Controls.Border" /> element that contains the header.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.CreateColumnFooterContent(C1.WPF.FlexGrid.C1FlexGrid,System.Windows.Controls.Border,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Sets the content of a <see cref="T:System.Windows.Controls.Border" /> element used to display the value of a column footer cell.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="bdr">
        <see cref="T:System.Windows.Controls.Border" /> element that contains the header.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.CreateBottomLeftContent(C1.WPF.FlexGrid.C1FlexGrid,System.Windows.Controls.Border,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Sets the content of a <see cref="T:System.Windows.Controls.Border" /> element used to display the value of the bottom left cells.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="bdr">
        <see cref="T:System.Windows.Controls.Border" /> element that contains the header.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.GetErrorImage">
      <summary>
            Gets a <see cref="T:System.Windows.Media.Imaging.BitmapImage" /> used to indicate that a data item has
            one or more errors.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.CreateCellContentEditor(C1.WPF.FlexGrid.C1FlexGrid,System.Windows.Controls.Border,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Sets the content of a <see cref="T:System.Windows.Controls.Border" /> element used to display the value of a data cell.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that owns the cell.</param>
      <param name="bdr">
        <see cref="T:System.Windows.Controls.Border" /> element that contains the header.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the row and column represented by the cell.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.SetErrorTip(C1.WPF.FlexGrid.C1FlexGrid,System.Windows.Controls.Border,System.String)">
      <summary>
            Sets an error tooltip on a cell, honoring the grid's ErrorStyle property.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that contains the cell.</param>
      <param name="cell">
        <see cref="T:System.Windows.Controls.Border" /> element that contains the cell content.</param>
      <param name="err">String that contains the error description.</param>
      <remarks>
            The background of the error tooltip is set to the grid's ErrorStyle.BorderBrush 
            property; the font family and size are also set to the corresponding properties 
            in the grid's ErrorStyle property.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellFactory.RequireMeasureByLayout">
      <summary>
            This method will be used to check the cell content is customized or not.
            </summary>
      <returns>
      </returns>
    </member>
    <member name="T:C1.WPF.FlexGrid.CellRange">
      <summary>
            Represents a rectangular group of cells defined by two row indices and
            two column indices.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.#ctor(System.Int32,System.Int32,System.Int32,System.Int32)">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
      <param name="row1">Index of the first row in the range.</param>
      <param name="col1">Index of the last row in the range.</param>
      <param name="row2">Index of the first column in the range.</param>
      <param name="col2">Index of the last column in the range.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.#ctor(System.Int32,System.Int32)">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.CellRange" /> containing a single cell.
            </summary>
      <param name="row">Index of the cell row.</param>
      <param name="col">Index of the cell column.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.#ctor(System.Windows.UIElement)">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.CellRange" /> based on a 
            <see cref="T:System.Windows.UIElement" /> that represents a cell.
            </summary>
      <param name="e">
        <see cref="T:System.Windows.UIElement" /> that represents a cell.</param>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.Row">
      <summary>
            Gets or sets the index of the first row in this <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.Column">
      <summary>
            Gets or sets the index of the first column in this <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.Row2">
      <summary>
            Gets or sets the index of the last row in this <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.Column2">
      <summary>
            Gets or sets the index of the last column in this <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.RowSpan">
      <summary>
            Gets or sets the number of rows in <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.ColumnSpan">
      <summary>
            Gets or sets the number of columns in <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.TopRow">
      <summary>
            Gets the index of the top row in this <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
      <remarks>
            This value is the lower of <see cref="P:C1.WPF.FlexGrid.CellRange.Row" /> or <see cref="P:C1.WPF.FlexGrid.CellRange.Row2" />. 
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.BottomRow">
      <summary>
            Gets the index of the bottom row in this <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
      <remarks>
            This value is the higher of <see cref="P:C1.WPF.FlexGrid.CellRange.Row" /> or <see cref="P:C1.WPF.FlexGrid.CellRange.Row2" />. 
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.LeftColumn">
      <summary>
            Gets the index of the left column in this <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
      <remarks>
            This value is the lower of <see cref="P:C1.WPF.FlexGrid.CellRange.Column" /> or <see cref="P:C1.WPF.FlexGrid.CellRange.Column2" />. 
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.RightColumn">
      <summary>
            Gets the index of the right column in this <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
      <remarks>
            This value is the higher of <see cref="P:C1.WPF.FlexGrid.CellRange.Column" /> or <see cref="P:C1.WPF.FlexGrid.CellRange.Column2" />. 
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.RowCount">
      <summary>
            Gets cell range row count.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.ColumnCount">
      <summary>
            Gets cell range column count.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.Normalize">
      <summary>
            Returns a new <see cref="T:C1.WPF.FlexGrid.CellRange" /> normalized so 
            <see cref="P:C1.WPF.FlexGrid.CellRange.Row" /> is less than or equal to <see cref="P:C1.WPF.FlexGrid.CellRange.Row2" /> and
            <see cref="P:C1.WPF.FlexGrid.CellRange.Column" /> is less than or equal to <see cref="P:C1.WPF.FlexGrid.CellRange.Column2" />.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.SetRange(System.Int32,System.Int32)">
      <summary>
            Sets the value of the <see cref="P:C1.WPF.FlexGrid.CellRange.Row" />, <see cref="P:C1.WPF.FlexGrid.CellRange.Row2" />, 
            <see cref="P:C1.WPF.FlexGrid.CellRange.Column" />, and <see cref="P:C1.WPF.FlexGrid.CellRange.Column2" /> properties.
            </summary>
      <param name="row">Value to assign to the <see cref="P:C1.WPF.FlexGrid.CellRange.Row" /> and <see cref="P:C1.WPF.FlexGrid.CellRange.Row2" /> properties.</param>
      <param name="col">Value to assign to the <see cref="P:C1.WPF.FlexGrid.CellRange.Column" /> and <see cref="P:C1.WPF.FlexGrid.CellRange.Column2" /> properties.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.SetRange(System.Int32,System.Int32,System.Int32,System.Int32)">
      <summary>
            Sets the value of the <see cref="P:C1.WPF.FlexGrid.CellRange.Row" />, <see cref="P:C1.WPF.FlexGrid.CellRange.Row2" />, 
            <see cref="P:C1.WPF.FlexGrid.CellRange.Column" />, and <see cref="P:C1.WPF.FlexGrid.CellRange.Column2" /> properties.
            </summary>
      <param name="row">Value to assign to the <see cref="P:C1.WPF.FlexGrid.CellRange.Row" /> property.</param>
      <param name="col">Value to assign to the <see cref="P:C1.WPF.FlexGrid.CellRange.Column" /> property.</param>
      <param name="row2">Value to assign to the <see cref="P:C1.WPF.FlexGrid.CellRange.Row2" /> property.</param>
      <param name="col2">Value to assign to the <see cref="P:C1.WPF.FlexGrid.CellRange.Column2" /> property.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.Contains(C1.WPF.FlexGrid.CellRange)">
      <summary>
            Gets a value that indicates whether this range contains another range.
            </summary>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that may be contained within this range.</param>
      <returns>True if this range contains the range specified by the <paramref name="rng" /> parameter.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.Contains(System.Int32,System.Int32)">
      <summary>
            Gets a value that indicates whether this range contains a given cell.
            </summary>
      <param name="row">Index of the row that may be contained in this range.</param>
      <param name="col">Index of the column that may be contained in this range.</param>
      <returns>True if this range contains the cell specified by the <paramref name="row" /> and <paramref name="col" /> parameters.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.ContainsRow(System.Int32)">
      <summary>
            Gets a value that indicates whether this range contains a given row.
            </summary>
      <param name="row">Index of the row that may be contained in this range.</param>
      <returns>True if this range contains the row specified by the <paramref name="row" /> parameter.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.ContainsColumn(System.Int32)">
      <summary>
            Gets a value that indicates whether this range contains a given column.
            </summary>
      <param name="col">Index of the column that may be contained in this range.</param>
      <returns>True if this range contains the column specified by the <paramref name="col" /> parameter.</returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.IsSingleCell">
      <summary>
            Gets a value that indicates whether this range contains a single cell.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.IsValid">
      <summary>
            Gets a value that indicates whether this range is valid.
            </summary>
      <remarks>
            A range is considered valid if all its indices (<see cref="P:C1.WPF.FlexGrid.CellRange.Row" />, <see cref="P:C1.WPF.FlexGrid.CellRange.Row2" />,
            <see cref="P:C1.WPF.FlexGrid.CellRange.Column" />, and <see cref="P:C1.WPF.FlexGrid.CellRange.Column2" />) are greater than -1.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.Intersects(C1.WPF.FlexGrid.CellRange)">
      <summary>
            Gets a value that indicates whether this range intersects with a given range.
            </summary>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that may intersect with this range.</param>
      <returns>True if the range specified by the <paramref name="rng" /> parameter 
            intersects (has cells in common) with this range.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.Intersection(C1.WPF.FlexGrid.CellRange)">
      <summary>
            Gets a <see cref="T:C1.WPF.FlexGrid.CellRange" /> that represents the intersection of this range
            with a given range.
            </summary>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> to intersect with this range.</param>
      <returns>A <see cref="T:C1.WPF.FlexGrid.CellRange" /> that represents the intersection (common cells)
            between this range and the range specified by the <paramref name="rng" /> parameter.
            </returns>
      <remarks>
            If this range does not intersect the range specified by the <paramref name="rng" />
            parameter, this method returns an invalid <see cref="T:C1.WPF.FlexGrid.CellRange" /> object.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.Union(C1.WPF.FlexGrid.CellRange)">
      <summary>
            Gets a <see cref="T:C1.WPF.FlexGrid.CellRange" /> that represents the union of this range
            with a given range.
            </summary>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> to join with this range.</param>
      <returns>A <see cref="T:C1.WPF.FlexGrid.CellRange" /> that represents the union of this range 
            and the range specified by the <paramref name="rng" /> parameter.
            </returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.Cells">
      <summary>
            Gets an <see cref="T:System.Collections.IEnumerable" /> that can be used to 
            iterate over the cells in this <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
      <example>
            The code below shows how you can use the <b>Cells</b> property to add
            all integer values in a given cell range.
            <code>
            var total = 0;
            foreach (var cell in rng.Cells)
            {
              var value = grid[cell.Row, cell.Column];
              if (value is int)
              {
                total += (int)value;
              }
            }
            </code></example>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRange.Empty">
      <summary>
            Gets a special value that represents an invalid range.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.Equals(System.Object)">
      <summary>
            Indicates whether this instance and a specified object are equal.
            </summary>
      <param name="obj">Another object to compare to.</param>
      <returns>True if the objects are equal.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.op_Equality(C1.WPF.FlexGrid.CellRange,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Equality operator for <see cref="T:C1.WPF.FlexGrid.CellRange" /> objects.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.op_Inequality(C1.WPF.FlexGrid.CellRange,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Inequality operator for <see cref="T:C1.WPF.FlexGrid.CellRange" /> objects.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRange.GetHashCode">
      <summary>
            Returns the hash code for this instance.
            </summary>
      <returns>The hash code for this instance.</returns>
    </member>
    <member name="T:C1.WPF.FlexGrid.CellStyle">
      <summary>
            Defines attributes used to render grid cells.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.FontFamily">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.CellStyle.FontFamily" /> used to render text in a cell.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.FontWeight">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.CellStyle.FontWeight" /> used to render text in a cell.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.FontStyle">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.CellStyle.FontStyle" /> used to render text in a cell.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.FontSize">
      <summary>
            Gets or sets the size of the font used to render text in a cell.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.TextDecorations">
      <summary>
            Gets or sets the <see cref="T:System.Windows.TextDecorationCollection" /> to be applied to text in the cell.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.TextWrapping">
      <summary>
            Gets or sets whether text should be wrapped in the cell.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.TextTrimming">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.CellStyle.TextTrimming" /> used to render text in a cell.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.Background">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> used to paint the cell background.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.Foreground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> used to paint the cell text.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.HorizontalAlignment">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.CellStyle.HorizontalAlignment" /> of the cell content.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.VerticalAlignment">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.CellStyle.VerticalAlignment" /> of the cell content.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.BorderBrush">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> used to render the cell borders.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.BorderThickness">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Thickness" /> of the cell borders.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.CornerRadius">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.CellStyle.CornerRadius" /> of the cell borders.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellStyle.Tag">
      <summary>
            Gets or sets an arbitrary object value that can be used to store custom
            information about this <see cref="T:C1.WPF.FlexGrid.CellStyle" />.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellStyle.Clone">
      <summary>
            Gets a clone of this <see cref="T:C1.WPF.FlexGrid.CellStyle" />.
            </summary>
      <returns>A clone of this <see cref="T:C1.WPF.FlexGrid.CellStyle" />.</returns>
    </member>
    <member name="E:C1.WPF.FlexGrid.CellStyle.PropertyChanged">
      <summary>
            Occurs when the value of a property changes.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellStyle.OnPropertyChanged(System.ComponentModel.PropertyChangedEventArgs)">
      <summary>
            Raises the <see cref="E:C1.WPF.FlexGrid.CellStyle.PropertyChanged" /> event.
            </summary>
      <param name="e">
        <see cref="T:System.ComponentModel.PropertyChangedEventArgs" /> that contains the event data.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellStyle.Apply(System.Windows.Controls.Border,C1.WPF.FlexGrid.SelectedState)">
      <summary>
            Applies the attributes defined by this <see cref="T:C1.WPF.FlexGrid.CellStyle" /> to a cell.
            </summary>
      <param name="bdr">
        <see cref="T:System.Windows.Controls.Border" /> element that represents a cell.</param>
      <param name="selState">
        <see cref="T:C1.WPF.FlexGrid.SelectedState" /> value that reflects the cell's current selected state.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellStyle.Apply(System.Windows.Controls.Border)">
      <summary>
            Applies the attributes defined by this <see cref="T:C1.WPF.FlexGrid.CellStyle" /> to a cell.
            </summary>
      <param name="bdr">
        <see cref="T:System.Windows.Controls.Border" /> element that represents a cell.</param>
    </member>
    <member name="T:C1.WPF.FlexGrid.NullableObjectConverter`1">
      <summary>
            Converter required to support nullable properties in XAML.
            </summary>
      <typeparam name="T">Underlying type of nullable value.</typeparam>
    </member>
    <member name="M:C1.WPF.FlexGrid.NullableObjectConverter`1.CanConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Type)">
      <summary>
            Checks whether the converter can convert from a given type.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.NullableObjectConverter`1.ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object)">
      <summary>
            Converts from a given type.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.NullableObjectConverter`1.CanConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Type)">
      <summary>
            Checks whether the converter can convert to a given type.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.NullableObjectConverter`1.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
      <summary>
            Convert to a given type.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.Column">
      <summary>
            Represents a grid column.
            </summary>
      <remarks>
        <para>
          <see cref="T:C1.WPF.FlexGrid.Column" /> objects do not have any visual representation.</para>
        <para>Rows and columns provide properties that determine the appearance and 
            content of cell objects which are the only objects in the 
            <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that do have a visual representation.</para>
      </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.Column.#ctor">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.Column" /> object.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.ColumnName">
      <summary>
            Gets or sets a value used as an identifier for the column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.Header">
      <summary>
            Gets or sets a value used as a caption in the column header cells.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.ToolTip">
      <summary>
            Gets or sets the tooltip text for the column header cells.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.DataType">
      <summary>
            Gets the type of data stored in this column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.AutoGenerated">
      <summary>
            Gets or sets a value that indicates whether this column was automatically
            generated by the grid (see the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AutoGenerateColumns" />
            property.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.Binding">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.Column.Binding" /> used to connect this column with 
            the items in the grid's <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ItemsSource" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.PropertyInfo">
      <summary>
            Gets or sets a <see cref="P:C1.WPF.FlexGrid.Column.PropertyInfo" /> object used for binding the
            column to items in the data source.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.BoundPropertyName">
      <summary>
            Gets the name of the property that this column is currently bound to.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.Format">
      <summary>
            Gets or sets a string used to format values within cells in this column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.ValueConverter">
      <summary>
            Gets or sets an <see cref="T:System.Windows.Data.IValueConverter" /> associated with this column's <see cref="P:C1.WPF.FlexGrid.Column.Binding" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.Width">
      <summary>
            Gets or sets the width of this column, in pixels (set to GridLength.Auto
            to use the default width).
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.MinWidth">
      <summary>
            Gets or sets the minimum width of this column, in pixels (this value is used
            only for star-sized columns).
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.MaxWidth">
      <summary>
            Gets or sets the maximum width of this column, in pixels (this value is used
            only for star-sized columns).
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.Left">
      <summary>
            Gets the position of the left side of this column, in pixels, relative to the grid.
            </summary>
      <remarks>
            The value returned is the sum of column widths from the left of the grid until 
            this column, and does not account for the scroll position. To account for the scroll 
            position, this value should be adjusted using the grid's <b>ScrollPosition</b>
            property.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.Right">
      <summary>
            Gets the position of the right side of this column, in pixels, relative to the grid.
            </summary>
      <remarks>
            The value returned is the sum of column widths from the left of the grid until 
            and including this column, and does not account for the scroll position. To account 
            for the scroll position, this value should be adjusted using the grid's <b>ScrollPosition</b>
            property.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.ActualWidth">
      <summary>
            Gets the rendering width of this column in pixels.
            </summary>
      <remarks>
            This property takes into account the default, minimum, and maximum 
            sizes set by the parent <see cref="T:C1.WPF.FlexGrid.ColumnCollection" />, as well as 
            star lengths assigned to columns.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.Index">
      <summary>
            Gets the index of this column in the grid's <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.Columns" /> 
            collection.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.AllowSorting">
      <summary>
            Gets or sets a value that indicates whether the user can sort this column by 
            clicking the cell header.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.CellTemplate">
      <summary>
             Gets or sets the template used to display the contents of a cell that is not
             in editing mode.
             </summary>
      <remarks>
        <para>The <b>CellTemplate</b> and <b>CellEditingTemplate</b>properties work like 
             the equivalent ones in the Microsoft DataGrid for Silverlight/WPF.</para>
        <para>They can be defined in XAML and are used to create the visual elements that 
             represent the cells in the column.</para>
        <para>
          <b>CellTemplate</b> creates cells in regular mode and <b>CellEditingTemplate</b>
             creates cells in edit mode.</para>
        <para>Note that in most cases you should specify a <see cref="P:C1.WPF.FlexGrid.Column.Binding" /> for the 
             column even if it has custom templates. The templates are used to show and edit
             the values on the grid, but the column binding is still used when getting data 
             values for other purposes including clipboard and export support.</para>
      </remarks>
      <example>
             The XAML below creates a column with custom templates for cell display and editing
             (notice that in addition to the templates, the XAML specifies a <see cref="P:C1.WPF.FlexGrid.Column.Binding" /> 
             for the column):
             <code>
             &lt;c1:C1FlexGrid x:Name="_fgTemplated"&gt;
               &lt;c1:C1FlexGrid.Columns&gt;
               
                 &lt;!-- add a templated column --&gt;
                 &lt;!-- Binding used only for clipboard and export support --&gt;
                 &lt;c1:Column Binding="{Binding Name}" Header="Template" Width="200"&gt;
            
                   &lt;!-- template for cells in display mode --&gt;
                   &lt;c1:Column.CellTemplate&gt;
                     &lt;DataTemplate&gt;
                       &lt;TextBlock Text="{Binding Name}" Foreground="Green" FontWeight="Bold" /&gt;
                     &lt;/DataTemplate&gt;
                   &lt;/c1:Column.CellTemplate&gt;
            
                   &lt;!-- template for cells in edit mode --&gt;
                   &lt;c1:Column.CellEditingTemplate&gt;
                     &lt;DataTemplate&gt;
                       &lt;Grid&gt;
                         &lt;Grid.ColumnDefinitions&gt;
                           &lt;ColumnDefinition Width="Auto" /&gt;
                           &lt;ColumnDefinition Width="*" /&gt;
                         &lt;/Grid.ColumnDefinitions&gt;
                         &lt;Image Source="edit_icon.png" Grid.Column="0" /&gt;
                         &lt;TextBox Text="{Binding Name, Mode=TwoWay}" Grid.Column="1" /&gt;
                       &lt;/Grid&gt;
                     &lt;/DataTemplate&gt;
                   &lt;/c1:Column.CellEditingTemplate&gt;
                 &lt;/c1:Column&gt;
               &lt;/c1:C1FlexGrid.Columns&gt;
             &lt;/c1:C1FlexGrid&gt;
             </code></example>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.HeaderTemplate">
      <summary>
            Gets or sets the template used to display the contents of column header cells.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.CellEditingTemplate">
      <summary>
            Gets or sets the template used to display the contents of a cell that is 
            in editing mode.
            </summary>
      <remarks>
        <para>The <b>CellTemplate</b> and <b>CellEditingTemplate</b> properties work like 
            the equivalent ones in the Microsoft DataGrid for Silverlight/WPF.</para>
        <para>They can be defined in XAML and are used to create the visual elements that 
            represent the cells in the column.</para>
        <para>
          <b>CellTemplate</b> creates cells in regular mode and <b>CellEditingTemplate</b>
            creates cells in edit mode.</para>
        <para>For an example, see the <see cref="P:C1.WPF.FlexGrid.Column.CellTemplate" /> property.</para>
      </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.GroupAggregate">
      <summary>
            Gets or sets the type of aggregate to include in group headers.
            </summary>
      <remarks>
            The aggregate values will only be visible if the grid's 
            <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.AreRowGroupHeadersFrozen" /> property is set to false.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.FooterCellStyle">
      <summary>
            Gets or sets a <see cref="T:C1.WPF.FlexGrid.CellStyle" /> that defines the appearance of the column
            footer cells in this column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.Grid">
      <summary>
            Gets the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that this column belongs to.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Column.GridPanel">
      <summary>
            Gets the <see cref="P:C1.WPF.FlexGrid.Column.GridPanel" /> that this column belongs to.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.Column.OnPropertyChanged(System.String)">
      <summary>
            Raises the <b>PropertyChanged</b> event on the parent columns collection.
            </summary>
      <param name="name">Name of the property that changed.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.Column.GetCultureInfo">
      <summary>
            Get UI culture based on Language property.
            </summary>
      <returns>
      </returns>
    </member>
    <member name="T:C1.WPF.FlexGrid.ColumnCollection">
      <summary>
            Represents a collection of <see cref="T:C1.WPF.FlexGrid.Column" /> objects.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.ColumnCollection.Item(System.String)">
      <summary>
            Gets a <see cref="T:C1.WPF.FlexGrid.Column" /> by its name.
            </summary>
      <param name="colName">Name of the column to retrieve.</param>
      <returns>The column with the requested name.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.ColumnCollection.Contains(System.String)">
      <summary>
            Gets a value that indicates whether the collection contains a <see cref="T:C1.WPF.FlexGrid.Column" />
            with a given name.
            </summary>
      <param name="colName">
        <see cref="P:C1.WPF.FlexGrid.Column.ColumnName" /> to look for.</param>
      <returns>True if the collection contains a column with the given name.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.ColumnCollection.IndexOf(System.String)">
      <summary>
            Gets the index of the column with a given name in the collection.
            </summary>
      <param name="colName">
        <see cref="P:C1.WPF.FlexGrid.Column.ColumnName" /> to look for.</param>
      <returns>The index of the column, or -1 if the collection does not contain 
            any columns with the given name.</returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.ColumnCollection.Selected">
      <summary>
            Gets a list with the columns that are currently selected.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.ColumnCollection.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs)">
      <summary>
            Raises the <see cref="E:CollectionChanged" /> event.
            </summary>
      <param name="e">
        <see cref="T:System.Collections.Specialized.NotifyCollectionChangedEventArgs" /> that contains the event data.</param>
    </member>
    <member name="T:C1.WPF.FlexGrid.DataTypeConverter">
      <summary>
            Converter required to support data type properties in XAML.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.DataTypeConverter.CanConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Type)">
      <summary>
            Checks whether the converter can convert from a given type.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.DataTypeConverter.ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object)">
      <summary>
            Converts from a given type.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.IEditValueConverter">
      <summary>
            Interface that extends <see cref="T:System.Windows.Data.IValueConverter" /> to provide editing information.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.IEditValueConverter.Values">
      <summary>
            Gets the list of values that should be displayed by the editor.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.IEditValueConverter.Exclusive">
      <summary>
            Gets a value that determines whether the editor should only allow values present
            in the <see cref="P:C1.WPF.FlexGrid.IEditValueConverter.Values" /> list.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.ColumnValueConverter">
      <summary>
            Defines a list of valid entries for a column.
            </summary>
      <remarks>
        <para>This class deals with three common binding scenarios:</para>
        <para>1) Columns that can only take a few specific values. For example, 
            you have a "Country" column of type string and a list of country names. 
            Users should select a country from the list, and not be allowed to enter 
            any countries not on the list. 
            The code below shows how you can handle this scenario:</para>
        <code>
            // get column
            var c = _flexEdit.Columns["Country"];
            
            // create and assign converter with exclusive value list
            c.ValueConverter = new ColumnValueConverter(GetCountryNames(), true);
            </code>
        <para>2) Columns that have a few common values, but may take other values 
            as well. For example, you have a "Country" column of type string and want to 
            provide a list of common country names that users can select easily. But in 
            this case users should also be allowed to type values that are not on the 
            list.
            The code below shows how you can handle this scenario:</para>
        <code>
            // get column
            var c = _flexEdit.Columns["Country"];
            
            // create and assign converter with non-exclusive value list
            c.ValueConverter = new ColumnValueConverter(GetCountryNames(), false);
            </code>
        <para>3) Columns that contain keys instead of actual values. For example, the 
            column may contain an integer that represents a country ID, but users 
            should see and edit the corresponding country name instead.
            The code below shows how you can handle this scenario:</para>
        <code>
            // build key-value dictionary
            var dct = new Dictionary&lt;int, string&gt;();
            foreach (var country in GetCountryNames())
            {
              dct[dct.Count] = country;
            }
            
            // get column
            var c = _flexEdit.Columns["CountryID"];
            
            // create and assign converter with value dictionary
            c.ValueConverter = new ColumnValueConverter(dct);
            
            // align column to the left
            c.HorizontalAlignment = HorizontalAlignment.Left;
            </code>
      </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.ColumnValueConverter.#ctor">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.ColumnValueConverter" />.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.ColumnValueConverter.#ctor(System.Collections.IDictionary)">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.ColumnValueConverter" /> based on a dictionary.
            </summary>
      <param name="dictionary">Dictionary that contains the data (key) and display values for a grid column.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.ColumnValueConverter.#ctor(System.Collections.ICollection,System.Boolean)">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.ColumnValueConverter" /> based on a simple value list.
            </summary>
      <param name="values">List with valid values for a grid column.</param>
      <param name="exclusive">Whether the column may contain values not included in the 
            <paramref name="values" /> list.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.ColumnValueConverter.#ctor(System.Collections.IEnumerable,System.String,System.String)">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.ColumnValueConverter" /> based on an object collection.
            </summary>
      <param name="values">Collection of objects that contain the key and display values for the column.</param>
      <param name="valuePath">Name of the property that contains the values stored in the grid.</param>
      <param name="displayMemberPath">Name of the property that contains the values displayed in the grid.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.ColumnValueConverter.SetSource(System.Collections.IDictionary)">
      <summary>
            Sets the converter source to a dictionary containing keys (objects to store in the column 
            cells) and their corresponding display values (strings to display to the user).
            </summary>
      <param name="dictionary">Dictionary containing keys (objects to store in the column cells)
            and strings to display in the cells.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.ColumnValueConverter.SetSource(System.Collections.ICollection,System.Boolean)">
      <summary>
            Sets the converter source to a list of values to store in the cell.
            </summary>
      <param name="values">Values to store in cells and display to user.</param>
      <param name="exclusive">Whether the user can enter values that are not on the list.</param>
    </member>
    <member name="M:C1.WPF.FlexGrid.ColumnValueConverter.SetSource(System.Collections.IEnumerable,System.String,System.String)">
      <summary>
            Sets the converter source to a list of objects that contain the keys (values stored 
            in the column cells) and their corresponding display values.
            </summary>
      <param name="values">Collection of objects that contain the key and display values for the column.</param>
      <param name="valuePath">Name of the property that contains the values stored in the grid.</param>
      <param name="displayMemberPath">Name of the property that contains the values displayed in the grid.</param>
    </member>
    <member name="P:C1.WPF.FlexGrid.ColumnValueConverter.Values">
      <summary>
            Gets the collection of values that should be displayed by the editor.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.ColumnValueConverter.Exclusive">
      <summary>
            Gets a value that determines whether the editor should only allow values present
            in the <see cref="P:C1.WPF.FlexGrid.ColumnValueConverter.Values" /> list.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.ColumnValueConverter.Convert(System.Object,System.Type,System.Object,System.Globalization.CultureInfo)">
      <summary>
            Converts data values into display values.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.ColumnValueConverter.ConvertBack(System.Object,System.Type,System.Object,System.Globalization.CultureInfo)">
      <summary>
            Converts display values back into data values.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.CellEditEventArgs">
      <summary>
            Provides data for events related to editing.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellEditEventArgs.#ctor(C1.WPF.FlexGrid.GridPanel,C1.WPF.FlexGrid.CellRange,System.Windows.FrameworkElement,System.Boolean)">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.CellEditEventArgs" />.
            </summary>
      <param name="panel">
        <see cref="T:C1.WPF.FlexGrid.GridPanel" /> that contains the range.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> represented by this object.</param>
      <param name="editor">
        <see cref="T:System.Windows.FrameworkElement" /> used to edit the cell value.</param>
      <param name="cancelEdits">Value that indicates whether the edits are being committed or canceled.</param>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellEditEventArgs.CancelEdits">
      <summary>
            Gets a value that determines whether the editing action was canceled.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellEditEventArgs.Editor">
      <summary>
            Gets the <see cref="T:System.Windows.FrameworkElement" /> responsible for editing the cell value.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.CellRangeEventArgs">
      <summary>
            Provides data for events that affect cell ranges.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.CellRangeEventArgs.#ctor(C1.WPF.FlexGrid.GridPanel,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.CellRangeEventArgs" />.
            </summary>
      <param name="panel">
        <see cref="T:C1.WPF.FlexGrid.GridPanel" /> that contains the range.</param>
      <param name="rng">
        <see cref="P:C1.WPF.FlexGrid.CellRangeEventArgs.CellRange" /> represented by this object.</param>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRangeEventArgs.Panel">
      <summary>
        <see cref="T:C1.WPF.FlexGrid.GridPanel" /> that contains the range affected by the event.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRangeEventArgs.CellType">
      <summary>
        <see cref="P:C1.WPF.FlexGrid.CellRangeEventArgs.CellType" /> of the range affected by the event.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRangeEventArgs.CellRange">
      <summary>
        <see cref="P:C1.WPF.FlexGrid.CellRangeEventArgs.CellRange" /> affected by the event.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRangeEventArgs.Row">
      <summary>
            Index of the row affected by the event.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.CellRangeEventArgs.Column">
      <summary>
            Index of the column affected by the event.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.CustomAggregateEventArgs">
      <summary>
            Provides data for the <see cref="E:C1.WPF.FlexGrid.C1FlexGrid.CustomAggregate" /> event.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.CustomAggregateEventArgs.#ctor(C1.WPF.FlexGrid.GridPanel,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.CustomAggregateEventArgs" />.
            </summary>
      <param name="panel">
        <see cref="T:C1.WPF.FlexGrid.GridPanel" /> that contains the range.</param>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> represented by this object.</param>
    </member>
    <member name="P:C1.WPF.FlexGrid.CustomAggregateEventArgs.Result">
      <summary>
            Gets or sets the custom aggregate calculated over the range.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.FileFormat">
      <summary>
            Specifies file formats available for saving the grid.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.FileFormat.Csv">
      <summary>
            Comma-separated values (can be loaded into Excel).
            </summary>
      <remarks>
            Cell values are enclosed in double quotes and separated by commas. 
            </remarks>
    </member>
    <member name="F:C1.WPF.FlexGrid.FileFormat.Text">
      <summary>
            Tab-separated plain text format.
            </summary>
      <remarks>
            Cell values are separated by tab characters. 
            </remarks>
    </member>
    <member name="F:C1.WPF.FlexGrid.FileFormat.Html">
      <summary>
            Hypertext markup language.
            </summary>
      <remarks>
            Creates an HTML table with basic formatting (font, column widths, and alignment).
            Invisible rows and columns are not saved.
            </remarks>
    </member>
    <member name="T:C1.WPF.FlexGrid.SaveOptions">
      <summary>
            Specifies options available for customizing the files created by the 
            <see cref="M:C1.WPF.FlexGrid.C1FlexGrid.Save(System.IO.Stream,C1.WPF.FlexGrid.FileFormat,C1.WPF.FlexGrid.SaveOptions)" /> method.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SaveOptions.None">
      <summary>
            No options set.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SaveOptions.SaveColumnHeaders">
      <summary>
            Save column headers.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SaveOptions.SaveColumnFooters">
      <summary>
            Save column footers.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SaveOptions.SaveRowHeaders">
      <summary>
            Save row headers.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SaveOptions.SaveHeaders">
      <summary>
            Save row and column headers and footers.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SaveOptions.VisibleRows">
      <summary>
            Save only visible rows.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SaveOptions.VisibleColumns">
      <summary>
            Save only visible columns.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SaveOptions.VisibleOnly">
      <summary>
            Save only visible rows and columns.
            </summary>
      <remarks>
            This option only affects files saved as CSV or text.
            Invisible rows and columns are never saved to HTML files.
            </remarks>
    </member>
    <member name="F:C1.WPF.FlexGrid.SaveOptions.Formatted">
      <summary>
            Save formatted values.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.HitTestInfo">
      <summary>
            Contains information about a part of the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> at a 
            specified coordinate.
            </summary>
      <remarks>
        <para>The <see cref="T:C1.WPF.FlexGrid.HitTestInfo" /> class, in conjunction with the <see cref="M:C1.WPF.FlexGrid.C1FlexGrid.HitTest(System.Windows.RoutedEventArgs)" /> 
            method of the <see cref="N:C1.WPF.FlexGrid" /> control, is used to determine which part of a <see cref="N:C1.WPF.FlexGrid" /> 
            control the user has clicked. The <see cref="T:C1.WPF.FlexGrid.HitTestInfo" /> class contains the row, column, and type
            of cell at the specified location.</para>
        <para>To obtain a <see cref="T:C1.WPF.FlexGrid.HitTestInfo" />, call the <see cref="M:C1.WPF.FlexGrid.C1FlexGrid.HitTest(System.Windows.RoutedEventArgs)" /> method from 
            one of the mouse event handlers in the control. Pass <see cref="P:C1.WPF.FlexGrid.HitTestInfo.MouseEventArgs" /> event parameter
            to the <see cref="M:C1.WPF.FlexGrid.C1FlexGrid.HitTest(System.Windows.RoutedEventArgs)" /> method.</para>
      </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.HitTestInfo.CellType">
      <summary>
            Gets the type of cell at the specified location.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.HitTestInfo.Panel">
      <summary>
            Gets the <see cref="T:C1.WPF.FlexGrid.GridPanel" /> at the specified location.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.HitTestInfo.Point">
      <summary>
            Gets the <see cref="P:C1.WPF.FlexGrid.HitTestInfo.Point" /> that defines the hit test location.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.HitTestInfo.Row">
      <summary>
            Gets the index of the row at the specified location.
            </summary>
      <remarks>
            If there is no row at the specified location, this property returns -1.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.HitTestInfo.Column">
      <summary>
            Gets the index of the column at the specified location.
            </summary>
      <remarks>
            If there is no column at the specified location, this property returns -1.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.HitTestInfo.CellRange">
      <summary>
            Gets a <see cref="P:C1.WPF.FlexGrid.HitTestInfo.CellRange" /> object that represents the cell at
            the specified location.
            </summary>
      <remarks>
            If there is no cell at the specified location, this property returns 
            an invalid <see cref="P:C1.WPF.FlexGrid.HitTestInfo.CellRange" />. Use the <see cref="P:C1.WPF.FlexGrid.CellRange.IsValid" />
            property to determine whether a <see cref="P:C1.WPF.FlexGrid.HitTestInfo.CellRange" /> is valid.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.HitTestInfo.Rect">
      <summary>
            Gets a <see cref="P:C1.WPF.FlexGrid.HitTestInfo.Rect" /> value that represents the bounds of the cell
            at the specified location.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.HitTestInfo.MouseEventArgs">
      <summary>
            Gets the <see cref="T:System.Windows.RoutedEventArgs" /> object used to create this
            <see cref="T:C1.WPF.FlexGrid.HitTestInfo" /> object.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.KeyAction">
      <summary>
            Specifies the actions taken by the grid when the user presses a key.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.KeyAction.Default">
      <summary>
            No special action.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.KeyAction.MoveDown">
      <summary>
            Move the cursor down by one row.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.KeyAction.MoveAcross">
      <summary>
            Move the cursor right by one column.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.KeyAction.MoveAcrossOut">
      <summary>
            Move the cursor right by one column, and to the next control in the
            tab order when the last cell is reached.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.KeyAction.None">
      <summary>
            Ignore the key. This setting may be useful in situations where there
            are default buttons on a form. In this case, the grid should ignore
            the Enter key and let the form handle it. 
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.IMergeManager">
      <summary>
            Defines the functionality of classes that handle cell merging.
            </summary>
      <remarks>
            You can implement custom cell merging behaviors by creating a class
            that implements the <b>IMergeManager</b> interface and assigning an instance of
            this class to a grid's <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.MergeManager" />
            property.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.IMergeManager.GetMergedRange(C1.WPF.FlexGrid.C1FlexGrid,C1.WPF.FlexGrid.CellType,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Gets a <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the merged extent of a cell
            in a <see cref="T:C1.WPF.FlexGrid.GridPanel" />.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that contains the merged cell.</param>
      <param name="cellType">
        <see cref="T:C1.WPF.FlexGrid.CellType" /> that specifies the type of the merged cell.</param>
      <param name="rng">A <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the coordinates of the cell to be merged.</param>
      <returns>A <see cref="T:C1.WPF.FlexGrid.CellRange" /> that expands the given <paramref name="rng" /> over a merged range.</returns>
      <remarks>
        <para>The <b>GetMergedRange</b> method must fulfill two requirements:</para>
        <para>1) The range returned must always contain the range passed in as a parameter.</para>
        <para>2) The range returned must be the same for any cell contained in it.</para>
      </remarks>
    </member>
    <member name="T:C1.WPF.FlexGrid.MergeManager">
      <summary>
            Implements the grid's default merging behavior.
            </summary>
      <remarks>
            An instance of this class is automatically created and assigned to the grid's 
            <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.MergeManager" /> property to implement the grid's default
            merging behavior. If you need to customize the default merging behavior, create
            a class that implements the <see cref="T:C1.WPF.FlexGrid.IMergeManager" /> interface and assign an
            instance of that class to the grid's <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.MergeManager" />
            property.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.MergeManager.GetMergedRange(C1.WPF.FlexGrid.C1FlexGrid,C1.WPF.FlexGrid.CellType,C1.WPF.FlexGrid.CellRange)">
      <summary>
            Gets a <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the merged extent of a cell
            in a <see cref="T:C1.WPF.FlexGrid.GridPanel" />.
            </summary>
      <param name="grid">
        <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that contains the merged cell.</param>
      <param name="cellType">
        <see cref="T:C1.WPF.FlexGrid.CellType" /> that specifies the type of the merged cell.</param>
      <param name="rng">A <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the coordinates of the cell to be merged.</param>
      <returns>A <see cref="T:C1.WPF.FlexGrid.CellRange" /> that expands the given <paramref name="rng" /> over a merged range.</returns>
      <remarks>
            This method expands ranges by comparing the cell contents with the content of neighboring
            cells and merging cells that have the same content.
            </remarks>
    </member>
    <member name="T:C1.WPF.FlexGrid.AllowResizing">
      <summary>
            Defines which grid elements can be resized with the mouse.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowResizing.None">
      <summary>
            No grid elements can be resized with the mouse.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowResizing.Columns">
      <summary>
            User can resize columns with the mouse.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowResizing.Rows">
      <summary>
            User can resize rows with the mouse.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowResizing.Both">
      <summary>
            User can resize rows and columns with the mouse.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.AllowDragging">
      <summary>
            Defines which grid elements can be moved to new positions with the mouse.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowDragging.None">
      <summary>
            No grid elements can be moved with the mouse.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowDragging.Columns">
      <summary>
            User can drag columns to new positions using the mouse.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowDragging.Rows">
      <summary>
            User can drag rows to new positions using the mouse.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.AllowDragging.Both">
      <summary>
            User can drag rows and columns to new positions using the mouse.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.Row">
      <summary>
            Represents a grid row.
            </summary>
      <remarks>
        <para>
          <see cref="T:C1.WPF.FlexGrid.Row" /> objects do not have any visual representation.</para>
        <para>Rows and columns provide properties that determine the appearance and 
            content of cell objects which are the only objects in the 
            <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that do have a visual representation.</para>
      </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.Row.DataItem">
      <summary>
            Item in the <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.ItemsSource" /> that this row is bound to.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Row.Height">
      <summary>
            Gets or sets the height of this row in pixels (set to -1 to use the default height).
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Row.Top">
      <summary>
            Gets the position of the top of this row, in pixels, relative to the grid.
            </summary>
      <remarks>
            The value returned is the sum of row heights from the top of the grid until 
            this row, and does not account for the scroll position. To account for the scroll 
            position, this value should be adjusted using the grid's <b>ScrollPosition</b>
            property.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.Row.Bottom">
      <summary>
            Gets the position of the bottom of this row, in pixels, relative to the grid.
            </summary>
      <remarks>
            The value returned is the sum of row heights from the top of the grid until 
            and including this row, and does not account for the scroll position. To account 
            for the scroll position, this value should be adjusted using the grid's 
            <b>ScrollPosition</b> property.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.Row.ActualHeight">
      <summary>
            Gets the rendering height of this row in pixels.
            </summary>
      <remarks>
            This property takes into account the default, minimum, and maximum 
            sizes set by the parent <see cref="T:C1.WPF.FlexGrid.RowCollection" />.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.Row.Index">
      <summary>
            Gets the index of this row in the grid's <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.Rows" /> collection.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Row.Selected">
      <summary>
            Gets or sets a value that determines whether this row is selected.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Row.Item(C1.WPF.FlexGrid.Column)">
      <summary>
            Gets or sets the data stored in this row at a specific column.
            </summary>
      <param name="col">
        <see cref="T:C1.WPF.FlexGrid.Column" /> that contains the data.</param>
      <returns>The data stored in this row at a specific column.</returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.Row.Item(System.String)">
      <summary>
            Gets or sets the data stored in this row at a specific column.
            </summary>
      <param name="colName">Name of the <see cref="T:C1.WPF.FlexGrid.Column" /> that contains the data.</param>
      <returns>The data stored in this row at a specific column.</returns>
      <remarks>
            Columns are identified by their <see cref="P:C1.WPF.FlexGrid.Column.ColumnName" /> property.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.Row.Item(System.Int32)">
      <summary>
            Gets or sets the data stored in this row at a specific column.
            </summary>
      <param name="colIndex">Index of the <see cref="T:C1.WPF.FlexGrid.Column" /> that contains the data.</param>
      <returns>The data stored in this row at a specific column.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.Row.GetData(C1.WPF.FlexGrid.Column)">
      <summary>
            Gets the value stored in this row at a given column.
            </summary>
      <param name="col">
        <see cref="T:C1.WPF.FlexGrid.Column" /> that contains the value.</param>
      <returns>Value stored in the cell.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.Row.GetDataRaw(C1.WPF.FlexGrid.Column)">
      <summary>
            Gets the raw (unformatted) value stored in this row at a given column.
            </summary>
      <param name="col">
        <see cref="T:C1.WPF.FlexGrid.Column" /> that contains the value.</param>
      <returns>Raw value stored in the cell.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.Row.GetDataFormatted(C1.WPF.FlexGrid.Column)">
      <summary>
            Gets the display (formatted) value stored in this row at a given column.
            </summary>
      <param name="col">
        <see cref="T:C1.WPF.FlexGrid.Column" /> that contains the value.</param>
      <returns>Display value stored in the cell.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.Row.SetData(C1.WPF.FlexGrid.Column,System.Object)">
      <summary>
            Sets the value stored in this row at a given column.
            </summary>
      <param name="col">
        <see cref="T:C1.WPF.FlexGrid.Column" /> that contains the value.</param>
      <param name="value">Value to store in the cell.</param>
      <returns>True if a new value was successfully stored in the cell.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.Row.GetUnboundValue(C1.WPF.FlexGrid.Column)">
      <summary>
            Gets the unbound value stored in this row at a given column.
            </summary>
      <param name="col">Column that contains the value.</param>
      <returns>The unbound value stored at the given column.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.Row.SetUnboundValue(C1.WPF.FlexGrid.Column,System.Object)">
      <summary>
            Assigns an unbound value to this row at a given column.
            </summary>
      <param name="col">Column that contains the value.</param>
      <param name="value">Unbound value to be stored at the given column.</param>
      <returns>True if the value was stored successfully.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.Row.GetErrors(C1.WPF.FlexGrid.Column)">
      <summary>
            Gets a string containing all the errors associated with the
            data item bound to this row or with a specific property of 
            the data item.
            </summary>
      <param name="col">
        <see cref="T:C1.WPF.FlexGrid.Column" /> bound to a specific property
            of the data item. If this parameter is null, the method returns errors 
            associated with all properties of the data item bound to this row.</param>
      <returns>A string containing all the errors associated with the row's
            data item or with a specific property of the data item.</returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.Row.Grid">
      <summary>
            Gets the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> that this row belongs to.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.Row.GridPanel">
      <summary>
            Gets the <see cref="P:C1.WPF.FlexGrid.Row.GridPanel" /> that this row belongs to.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.Row.OnPropertyChanged(System.String)">
      <summary>
            Raises the <b>PropertyChanged</b> event on the parent rows collection.
            </summary>
      <param name="name">Name of the property that changed.</param>
    </member>
    <member name="T:C1.WPF.FlexGrid.GroupRow">
      <summary>
            Represents a row that serves as a header for a group of rows.
            </summary>
      <remarks>
            Group rows are automatically shown by the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" />
            when the <see cref="T:System.ComponentModel.ICollectionView" /> used as a data source contains
            grouped data and the grid's <see cref="P:C1.WPF.FlexGrid.C1FlexGrid.GroupRowPosition" /> property is not None.
            </remarks>
    </member>
    <member name="M:C1.WPF.FlexGrid.GroupRow.#ctor">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.GroupRow" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.GroupRow.Group">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Data.CollectionViewGroup" /> object associated 
            with this <see cref="T:C1.WPF.FlexGrid.GroupRow" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.GroupRow.Level">
      <summary>
            Gets or sets a value that represents the level of the group associated 
            with this <see cref="T:C1.WPF.FlexGrid.GroupRow" />.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.GroupRow.HasChildren">
      <summary>
            Gets a value that indicates whether this group row has child rows.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.GroupRow.IsAboveData">
      <summary>
            Gets a value that indicates whether this group row should be displayed above child rows.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.GroupRow.IsCollapsed">
      <summary>
            Gets or sets a value that indicates whether this <see cref="T:C1.WPF.FlexGrid.GroupRow" />
            is collapsed (child rows are hidden) or expanded (child rows are visible).
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.GroupRow.GetCellRange">
      <summary>
            Gets a <see cref="T:C1.WPF.FlexGrid.CellRange" /> object that contains all the rows in the
            group represented by this <see cref="T:C1.WPF.FlexGrid.GroupRow" /> and all columns.
            </summary>
      <returns>A <see cref="T:C1.WPF.FlexGrid.CellRange" /> object containing all the rows in the
            group represented by this <see cref="T:C1.WPF.FlexGrid.GroupRow" /> and all columns.</returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.GroupRow.GetDataItems">
      <summary>
            Gets a collection of data items in the group represented by this
            <see cref="T:C1.WPF.FlexGrid.GroupRow" />.
            </summary>
      <returns>A collection of data items in the group represented by this
            <see cref="T:C1.WPF.FlexGrid.GroupRow" /></returns>
    </member>
    <member name="M:C1.WPF.FlexGrid.GroupRow.GetUnboundValue(C1.WPF.FlexGrid.Column)">
      <summary>
            Gets the unbound value stored in this row at a given column.
            </summary>
      <param name="col">Column that contains the value.</param>
      <returns>The unbound value stored at the given column.</returns>
    </member>
    <member name="T:C1.WPF.FlexGrid.BoundRow">
      <summary>
            Represents a row that displays bound data.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.BoundRow.#ctor(System.Object)">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.BoundRow" /> object.
            </summary>
      <param name="dataItem">Data item that this row represents.</param>
    </member>
    <member name="T:C1.WPF.FlexGrid.RowWithDetails">
      <summary>
            Represents a row with details.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.RowWithDetails.#ctor(System.Object)">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.RowWithDetails" />.
            </summary>
      <param name="dataItem">Data item that this row represents.</param>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowWithDetails.DetailRow">
      <summary>
            Gets the reference to the child row.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowWithDetails.HasChildren">
      <summary>
            Gets a value that indicates whether this group row has child rows.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowWithDetails.IsAboveData">
      <summary>
            Gets a value that indicates whether this row should be displayed above child row.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowWithDetails.IsCollapsed">
      <summary>
            Gets or sets a value that indicates whether this <see cref="T:C1.WPF.FlexGrid.GroupRow" />
            is collapsed (child rows are hidden) or expanded (child rows are visible).
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.RowWithDetails.GetCellRange">
      <summary>
            Gets a <see cref="T:C1.WPF.FlexGrid.CellRange" /> object that contains both this and detail row and all columns.
            </summary>
      <returns>A <see cref="T:C1.WPF.FlexGrid.CellRange" /> object containing this and detail row and all columns.</returns>
    </member>
    <member name="T:C1.WPF.FlexGrid.DetailRow">
      <summary>
            Represents a row that displays row details.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.DetailRow.#ctor(System.Object,C1.WPF.FlexGrid.RowWithDetails)">
      <summary>
            Initializes a new instance of a <see cref="T:C1.WPF.FlexGrid.DetailRow" />.
            </summary>
      <param name="dataItem">Data item that this row represents.</param>
    </member>
    <member name="P:C1.WPF.FlexGrid.DetailRow.Parent">
      <summary>
            Returns reference to the parent row.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.NewRowTemplate">
      <summary>
            Represents a row used to add items to the source collection.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.RowCollection">
      <summary>
            Represents a collection of <see cref="T:C1.WPF.FlexGrid.Row" /> objects.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.RowCollection.GetDataItems(C1.WPF.FlexGrid.CellRange)">
      <summary>
            Gets a collection of data items in a given <see cref="T:C1.WPF.FlexGrid.CellRange" />.
            </summary>
      <param name="rng">
        <see cref="T:C1.WPF.FlexGrid.CellRange" /> that specifies the rows 
            for which to return data items.</param>
      <returns>A collection of data items in the given cell range.</returns>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCollection.Selected">
      <summary>
            Gets a list with the rows that are currently selected.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.ScaleMode">
      <summary>
            Specifies how the grid content should be scaled to fit the page.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.ScaleMode.ActualSize">
      <summary>
            Render the grid in actual size, breaking pages as needed.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.ScaleMode.PageWidth">
      <summary>
            Scale the grid so it fits the page width.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.ScaleMode.SinglePage">
      <summary>
            Scale the grid so it fits on a single page.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.ScaleMode.Selection">
      <summary>
            Prints the current selection in actual size, breaking pages as needed.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.RowCol">
      <summary>
            Abstract base class for <see cref="T:C1.WPF.FlexGrid.Row" /> and <see cref="T:C1.WPF.FlexGrid.Column" /> classes.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.Visible">
      <summary>
            Gets or sets a value that indicates whether this row or column is visible.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.IsVisible">
      <summary>
            Gets a value that indicates whether this row or column is visible and not collapsed.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.VisibleIndex">
      <summary>
            If <see cref="P:C1.WPF.FlexGrid.RowCol.IsVisible" /> property is True, returns the index of this element in the collection of visible items.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.AllowResizing">
      <summary>
            Gets or sets a value that indicates whether the user can resize this row or column with the mouse.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.AllowDragging">
      <summary>
            Gets or sets a value that indicates whether the user can move this row or column 
            to a new position with the mouse.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.AllowMerging">
      <summary>
            Gets or sets a value that indicates whether cells in this row or column can be merged.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.Selected">
      <summary>
            Gets or sets a value that indicates whether this row or column is selected.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.IsReadOnly">
      <summary>
            Gets or sets a value that indicates whether cells in this row or column can be
            edited.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.RowCol.OnPropertyChanged(System.String)">
      <summary>
            Raises the <b>PropertyChanged</b> event.
            </summary>
      <param name="name">Name of the property that changed.</param>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.CellStyle">
      <summary>
            Gets or sets a <see cref="P:C1.WPF.FlexGrid.RowCol.CellStyle" /> that defines the appearance of the cells 
            in this row or column.
            </summary>
      <remarks>
            This property allows you to define reusable styles for grid rows and columns.
            You can easily create <see cref="P:C1.WPF.FlexGrid.RowCol.CellStyle" /> objects in XAML or in code, and
            then assign them to grid rows or columns.
            </remarks>
      <example>
            The XAML snippet below defines two <see cref="P:C1.WPF.FlexGrid.RowCol.CellStyle" /> objects
            and applies them to a column:
            <code>
            &lt;Grid.Resources&gt;
              &lt;c1:CellStyle x:Key="redStyle" 
                Background="Red" Foreground="White"
                FontWeight="Bold" HorizontalAlignment="Center" /&gt;
              &lt;c1:CellStyle x:Key="blueStyle" 
                Background="Blue" Foreground="White" FontStyle="Italic"
                HorizontalAlignment="Center" VerticalAlignment="Center" /&gt;
            &lt;/Grid.Resources&gt;
            
            &lt;c1:C1FlexGrid Name="_flex" &gt;
              &lt;c1:C1FlexGrid.Columns&gt;
                &lt;c1:Column 
                  Header="Hello"
                  HeaderCellStyle="{StaticResource redStyle}" 
                  CellStyle="{StaticResource blueStyle}" /&gt;
               &lt;/c1:C1FlexGrid.Columns&gt;
               &lt;c1:C1FlexGrid.Rows&gt;
                 &lt;c1:Row/&gt;
                 &lt;c1:Row/&gt;
               &lt;/c1:C1FlexGrid.Rows&gt;
             &lt;/c1:C1FlexGrid&gt;
            </code></example>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.HeaderCellStyle">
      <summary>
            Gets or sets a <see cref="P:C1.WPF.FlexGrid.RowCol.CellStyle" /> that defines the appearance of the header cells 
            in this row or column.
            </summary>
      <remarks>
        <para>This property allows you to define reusable styles for grid rows and columns.
            You can easily create <see cref="P:C1.WPF.FlexGrid.RowCol.CellStyle" /> objects in XAML or in code, and
            then assign them to grid rows or columns.</para>
        <para>For an example, please see the <see cref="P:C1.WPF.FlexGrid.RowCol.CellStyle" /> property.</para>
      </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.FontFamily">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.RowCol.FontFamily" /> used to render text in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.FontWeight">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.RowCol.FontWeight" /> used to render text in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.FontStyle">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.RowCol.FontStyle" /> used to render text in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.FontSize">
      <summary>
            Gets or sets the font size used to render text in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.TextWrapping">
      <summary>
            Gets or sets whether text should be allowed to wrap in cells in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.TextTrimming">
      <summary>
            Gets or sets how text should be trimmed when it overflows the size of the cells in 
            this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.Background">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> used to paint the background
            of cells in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.Foreground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> used to paint text in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.HorizontalAlignment">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.RowCol.HorizontalAlignment" /> of the cells in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.VerticalAlignment">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.RowCol.VerticalAlignment" /> of the cells in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.HeaderFontFamily">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.RowCol.FontFamily" /> used to render text in header cells 
            in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.HeaderFontWeight">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.RowCol.FontWeight" /> used to render text in header cells 
            in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.HeaderFontStyle">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.RowCol.FontStyle" /> used to render text in header cells 
            in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.HeaderFontSize">
      <summary>
            Gets or sets the font size used to render text in header cells 
            in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.HeaderTextWrapping">
      <summary>
            Gets or sets whether text should be allowed to wrap in header cells in 
            this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.HeaderTextTrimming">
      <summary>
            Gets or sets how text should be trimmed when it overflows the size of the header cells in 
            this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.HeaderBackground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> used to paint the background
            of header cells in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.HeaderForeground">
      <summary>
            Gets or sets the <see cref="T:System.Windows.Media.Brush" /> used to paint text of the header cells 
            in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.HeaderHorizontalAlignment">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.RowCol.HorizontalAlignment" /> of the header cells in this row/column.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.HeaderVerticalAlignment">
      <summary>
            Gets or sets the <see cref="P:C1.WPF.FlexGrid.RowCol.VerticalAlignment" /> of the header cells in this row/column.
            </summary>
    </member>
    <member name="M:C1.WPF.FlexGrid.RowCol.StylePropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)">
      <summary>
            Called when any <see cref="P:C1.WPF.FlexGrid.RowCol.CellStyle" /> owned by the grid changes.
            </summary>
      <param name="sender">
        <see cref="P:C1.WPF.FlexGrid.RowCol.CellStyle" /> that changed.</param>
      <param name="e">
        <see cref="T:System.ComponentModel.PropertyChangedEventArgs" /> that contains the 
            name of the property that changed.</param>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.Grid">
      <summary>
            Gets the <see cref="T:C1.WPF.FlexGrid.C1FlexGrid" /> control that owns this object.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.GridPanel">
      <summary>
            Gets the <see cref="P:C1.WPF.FlexGrid.RowCol.GridPanel" /> control that owns this object.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowCol.Tag">
      <summary>
            Gets or sets an arbitrary object value that 
            can be used to store custom information about this object.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.RowColCollection`1">
      <summary>
            Abstract base class for <see cref="T:C1.WPF.FlexGrid.RowCollection" /> and <see cref="T:C1.WPF.FlexGrid.ColumnCollection" /> 
            classes.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowColCollection`1.DefaultSize">
      <summary>
            Gets or sets a value that indicates the size (width or height) in pixels
            for row and column objects in this collection.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowColCollection`1.MinSize">
      <summary>
            Gets or sets a value that indicates the minimum size (width or height) 
            in pixels for row and column objects in this collection.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowColCollection`1.MaxGroupLevel">
      <summary>
            Gets the maximum group level present in the grid.
            </summary>
      <remarks>
            If the grid does not contain any groups, this property returns -1.
            </remarks>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowColCollection`1.MaxSize">
      <summary>
            Gets or sets a value that indicates the maximum size (width or height) 
            in pixels for row and column objects in this collection.
            </summary>
    </member>
    <member name="P:C1.WPF.FlexGrid.RowColCollection`1.Frozen">
      <summary>
            Gets or sets the number of frozen rows or columns in the collection.
            </summary>
      <example>
            The code below implements an event handler that toggles row and column
            freezing based on the cursor position (similar to the 'freeze panes' command 
            in Excel).
            <code>
            // handle the Click event on the _chkFreeze CheckBox to
            // freeze/unfreeze rows/columns
            void _chkFreeze_Click(object sender, RoutedEventArgs e)
            {
              if (_chkFreeze.IsChecked.Value)
              {
                // freeze rows and columns above and to the left of the cursor
                _flex.Rows.Frozen = _flex.Selection.Row;
                _flex.Columns.Frozen = _flex.Selection.Column;
              }
              else
              {
                // unfreeze rows and columns
                _flex.Rows.Frozen = 0;
                _flex.Columns.Frozen = 0;
              }
            }
            </code></example>
    </member>
    <member name="M:C1.WPF.FlexGrid.RowColCollection`1.DeferNotifications">
      <summary>
            Suspends notifications until the returned <see cref="T:System.IDisposable" /> 
            object is disposed.
            </summary>
      <returns>An <see cref="T:System.IDisposable" /> object that must be disposed to restore notifications.</returns>
      <remarks>
            This method is typically used in update blocks to perform batch updates efficiently
            and safely.
            </remarks>
      <example>
        <para>The example below shows how you can use the <b>DeferNotifications</b> method to suspend
            notifications while setting the width of several columns on the grid.</para>
        <para>Note that the call to the <b>DeferNotifications</b> method is placed in a <b>using</b>
            statement, which automatically disposes of the object and restores notifications
            at the end of the block, even if the code within the block throws an exception.
            This makes the code more readable and concise than calling the more traditional 
            <b>BeginUpdate</b> and <b>EndUpdate</b> methods within a try/finally block.</para>
        <code>
            var grid = new C1FlexGrid();
            using (grid.Columns.DeferNotifications())
            {
              foreach (var col in grid.Columns)
              {
                col.Width = 100;
              }
            }
            </code>
      </example>
    </member>
    <member name="M:C1.WPF.FlexGrid.RowColCollection`1.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs)">
      <summary>
            Raises the <see cref="E:System.Collections.ObjectModel.ObservableCollection`1.CollectionChanged" /> event.
            </summary>
      <param name="e">
        <see cref="T:System.Collections.Specialized.NotifyCollectionChangedEventArgs" /> value that contains the event data.</param>
    </member>
    <member name="T:C1.WPF.FlexGrid.SelectionMode">
      <summary>
            Specifies constants that define the selection behavior.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SelectionMode.Cell">
      <summary>
            Selection corresponds to a single cell.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SelectionMode.CellRange">
      <summary>
            Selection corresponds to a cell range.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SelectionMode.Row">
      <summary>
            Selection corresponds to a single row.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SelectionMode.RowRange">
      <summary>
            Selection corresponds to a set of contiguous rows.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SelectionMode.ListBox">
      <summary>
            Selection corresponds to an arbitrary set of rows.
            </summary>
    </member>
    <member name="T:C1.WPF.FlexGrid.SelectedState">
      <summary>
            Specifies the selected state of a cell.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SelectedState.None">
      <summary>
            Cell is not selected.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SelectedState.Selected">
      <summary>
            Cell is selected but does not contain the grid cursor.
            </summary>
    </member>
    <member name="F:C1.WPF.FlexGrid.SelectedState.Cursor">
      <summary>
            Cell is selected and contains the grid cursor.
            </summary>
    </member>
    <member name="T:C1.Util.Util">
      <summary>
            General utilities.
            </summary>
    </member>
    <member name="P:C1.Util.Util.ThicknessEmpty">
      <summary>
            Gets an empty <see cref="T:System.Windows.Thickness" />.
            </summary>
    </member>
    <member name="P:C1.Util.Util.TransparentBrush">
      <summary>
            Gets a transparent brush.
            </summary>
    </member>
    <member name="P:C1.Util.Util.OpaqueBrush">
      <summary>
            Gets an opaque brush.
            </summary>
    </member>
    <member name="P:C1.Util.Util.WhiteBrush">
      <summary>
            Gets a white brush.
            </summary>
    </member>
    <member name="P:C1.Util.Util.BlackBrush">
      <summary>
            Gets a black brush.
            </summary>
    </member>
    <member name="P:C1.Util.Util.ErrorBrush">
      <summary>
            Gets the default error brush.
            </summary>
    </member>
    <member name="P:C1.Util.Util.BlueBrush">
      <summary>
            Gets a blue brush.
            </summary>
    </member>
    <member name="M:C1.Util.Util.CreatePolygon(System.Windows.Media.Brush,System.Double[])">
      <summary>
            Creates a polygon (used to create sort and tree glyphs).
            </summary>
      <param name="brush">
        <see cref="T:System.Windows.Media.Brush" /> used to fill the polygon.</param>
      <param name="values">Array with X and Y coordinates of the points that define the polygon.</param>
      <returns>A polygon with the specified background and geometry.</returns>
    </member>
    <member name="M:C1.Util.Util.GetPosition(System.Windows.RoutedEventArgs,System.Windows.UIElement)">
      <summary>
            Similar to e.GetPosition, but works in zoomed popups. 
            </summary>
    </member>
    <member name="M:C1.Util.Util.GetChildrenOfType``1(System.Windows.DependencyObject)">
      <summary>
            Gets an element's children of a given type.
            </summary>
      <typeparam name="T">Type to look for.</typeparam>
      <param name="e">Parent element.</param>
    </member>
    <member name="M:C1.Util.Util.GetFirstChildOfType``1(System.Windows.FrameworkElement)">
      <summary>
            Gets an element's first child of a given type.
            </summary>
      <typeparam name="T">Type to look for.</typeparam>
      <param name="e">Parent element.</param>
      <returns>Element's first child of type T (or the element itself if it is of type T).</returns>
    </member>
    <member name="M:C1.Util.Util.GetParentOfType``1(System.Windows.DependencyObject)">
      <summary>
            Gets an element's first ancestor of a given type.
            </summary>
      <typeparam name="T">Type to look for.</typeparam>
      <param name="e">Child element.</param>
    </member>
    <member name="M:C1.Util.Util.IsPrimitive(System.Type)">
      <summary>
            Gets whether a type is a primitive type or a string.
            </summary>
    </member>
    <member name="M:C1.Util.Util.ContainsFocus(System.Windows.FrameworkElement)">
      <summary>
            Gets a value that determines whether an element or any of its children
            contains the focus.
            </summary>
      <param name="e">Element to check.</param>
      <returns>True if the element or one of its children contains the focus.</returns>
    </member>
    <member name="M:C1.Util.Util.CloneBinding(System.Windows.Data.Binding)">
      <summary>
            Creates a clone of a given binding.
            </summary>
      <param name="b">
        <see cref="T:System.Windows.Data.Binding" /> to clone.</param>
      <returns>A clone of a the binding <paramref name="b" />.</returns>
    </member>
    <member name="M:C1.Util.Util.SetBindingValidation(System.Windows.Data.Binding,System.Boolean)">
      <summary>
            Turns validation on or off for a new given binding.
            </summary>
      <param name="b">
        <see cref="T:System.Windows.Data.Binding" /> to clone.</param>
      <param name="validate">True to enable validation, false to disable validation.</param>
    </member>
    <member name="M:C1.Util.Util.GetBindingExpression(System.Windows.FrameworkElement,System.Windows.FrameworkElement@,System.Windows.DependencyProperty@)">
      <summary>
            Returns the BindingExpression associated with an editor.
            </summary>
      <param name="e">Element to get the binding expression for.</param>
      <param name="child">Child element that contains the binding.</param>
      <param name="dp">Dependency property used in the binding.</param>
    </member>
    <member name="M:C1.Util.Util.UpdateBindingSource(System.Windows.FrameworkElement)">
      <summary>
            Updates the binding source for an editor cell (without waiting for it to lose focus).
            </summary>
    </member>
    <member name="M:C1.Util.Util.GetValueFromBindings(System.Windows.FrameworkElement)">
      <summary>
            Returns the current value on a binding source so caller can update the target
            explicitly (because Silverlight doesn't have binding.UpdateTarget)
            </summary>
      <param name="e">Element to get the bound value from.</param>
    </member>
    <member name="M:C1.Util.Util.CancelBindings(System.Windows.FrameworkElement)">
      <summary>
            Removes all bindings from an element and its children, effectively
            canceling any edits made using the element.
            </summary>
      <param name="e">Element to clear.</param>
    </member>
    <member name="M:C1.Util.Util.PositionPopup(System.Windows.Controls.Primitives.Popup,System.Windows.FrameworkElement)">
      <summary>
            Position a popup below a FrameworkElement.
            </summary>
    </member>
    <member name="M:C1.Util.Util.GetEquivalentCulture(System.Windows.Markup.XmlLanguage)">
      <summary>
            Gets a <see cref="T:System.Globalization.CultureInfo" /> to match a given <see cref="T:System.Windows.Markup.XmlLanguage" />.
            </summary>
      <param name="lang">
        <see cref="T:System.Windows.Markup.XmlLanguage" /> to match.</param>
      <returns>A <see cref="T:System.Globalization.CultureInfo" /> that matches the given <see cref="T:System.Windows.Markup.XmlLanguage" /></returns>
    </member>
    <member name="M:C1.Util.Util.SetFocus(System.Windows.Controls.Control)">
      <summary>
            Attempts to set the focus to a given control.
            </summary>
    </member>
    <member name="T:C1.Util.Timer">
      <summary>
            A timer that can be used in Silverlight and WPF applications.
            </summary>
    </member>
  </members>
</doc>