public static IEnumerable <object> GetSelectedItems(this DataGridContext gridContext)
        {
            if (gridContext.DataGridControl.SelectionUnit == SelectionUnit.Cell)
            {
                var query = from range in gridContext.SelectedCellRanges
                            from item in gridContext.EnumerateItems(range.ItemRange)
                            select item;

                return(query.Distinct().OrderBy(item => gridContext.Items.IndexOf(item)));
            }
            else
            {
                var query = from range in gridContext.SelectedItemRanges
                            from item in gridContext.EnumerateItems(range)
                            select item;
                return(query.Distinct().OrderBy(item => gridContext.Items.IndexOf(item)));
            }
        }