private static List <Dictionary <int, Color?> > CreateColorMap(FastGridControl dataGrid)
        {
            var ret = new List <Dictionary <int, Color?> >();

            if (dataGrid.Model == null)
            {
                return(ret);
            }

            if (dataGrid.Model is DiffGridModel)
            {
                DiffGridModel model = dataGrid.Model as DiffGridModel;
                if (model != null)
                {
                    var rowCount = model.RowCount - model.GetHiddenRows(dataGrid).Count;
                    for (int i = 0; i < rowCount; i++)
                    {
                        var columnColorMap = new Dictionary <int, Color?>();
                        for (int j = 0, ccount = dataGrid.Model.ColumnCount; j < ccount; j++)
                        {
                            columnColorMap.Add(j, model.GetCell(dataGrid, i, j, true)?.BackgroundColor);
                        }

                        ret.Add(columnColorMap);
                    }
                }
            }
            else if (dataGrid.Model is SheetGridModel)
            {
                SheetGridModel model = dataGrid.Model as SheetGridModel;

                var rowCount = model.RowCount - model.GetHiddenRows(dataGrid).Count;
                for (int i = 0; i < rowCount; i++)
                {
                    var columnColorMap = new Dictionary <int, Color?>();
                    for (int j = 0, ccount = dataGrid.Model.ColumnCount; j < ccount; j++)
                    {
                        columnColorMap.Add(j, model.GetCell(dataGrid, i, j, true)?.BackgroundColor);
                    }

                    ret.Add(columnColorMap);
                }
            }

            return(ret);
        }