Completed
Last Updated: 01 Aug 2013 02:51 by ADMIN
To reproduce:
- Use the code below on a new grid with 3 combo box columns - computer_id, computer_des, location_id

public static DataTable dsComputerImages = null;
public static DataTable dsLocations = null;

private void loadComputerImagesGrid()
{
    dsLocations = new DataTable();
    DataColumn newColumn = new DataColumn("location_id", typeof(Int64));
    dsLocations.Columns.Add(newColumn);
    newColumn = new DataColumn("location_des", typeof(String));
    dsLocations.Columns.Add(newColumn);

    DataRow newRow = dsLocations.NewRow();
    newRow["location_id"] = 1;
    newRow["location_des"] = "Boston";
    dsLocations.Rows.Add(newRow);

    newRow = dsLocations.NewRow();
    newRow["location_id"] = 2;
    newRow["location_des"] = "New York";
    dsLocations.Rows.Add(newRow);

    newRow = dsLocations.NewRow();
    newRow["location_id"] = 3;
    newRow["location_des"] = "Huston";
    dsLocations.Rows.Add(newRow);

    dsComputerImages = new DataTable();
    newColumn = new DataColumn("computer_id", typeof(Int64));
    dsComputerImages.Columns.Add(newColumn);
    newColumn = new DataColumn("computer_des", typeof(String));
    dsComputerImages.Columns.Add(newColumn);
    newColumn = new DataColumn("location_id", typeof(Int64));
    dsComputerImages.Columns.Add(newColumn);

    newRow = dsComputerImages.NewRow();
    newRow["computer_id"] = 1;
    newRow["computer_des"] = "AAA";
    newRow["location_id"] = "1";
    dsComputerImages.Rows.Add(newRow);

    newRow = dsComputerImages.NewRow();
    newRow["computer_id"] = 2;
    newRow["computer_des"] = "BBB";
    newRow["location_id"] = "1";
    dsComputerImages.Rows.Add(newRow);

    newRow = dsComputerImages.NewRow();
    newRow["computer_id"] = 3;
    newRow["computer_des"] = "CCC";
    newRow["location_id"] = "2";
    dsComputerImages.Rows.Add(newRow);

    newRow = dsComputerImages.NewRow();
    newRow["computer_id"] = 4;
    newRow["computer_des"] = "DDD";
    newRow["location_id"] = "3";
    dsComputerImages.Rows.Add(newRow);

    this.ComputerImagesGrid.AutoGenerateColumns = false;
    this.ComputerImagesGrid.DataSource = dsComputerImages;

    this.ComputerImagesGrid.AutoSizeRows = true;
}

private void ComputerImagesGrid_DataBindingComplete(object sender, GridViewBindingCompleteEventArgs e)
{
    ((GridViewComboBoxColumn)((RadGridView)sender).Columns["location_id"]).DataSource = dsLocations;
    ((GridViewComboBoxColumn)((RadGridView)sender).Columns["location_id"]).ValueMember = "location_id";
    ((GridViewComboBoxColumn)((RadGridView)sender).Columns["location_id"]).DisplayMember = "location_des";
    ((GridViewComboBoxColumn)((RadGridView)sender).Columns["location_id"]).DisplayMemberSort = true;
}
Completed
Last Updated: 17 Sep 2015 13:44 by ADMIN
Description: CustomFiltering event does not fire for a RadGridView with Self-Referencing Hierarchy

To reproduce:
- add RadGridView  to a form
- EnableCustomFiltering=true and EnableFiltering=true
- AddSelfReference

Workaround:
- First AddSelfReference and bind the grid
- Second EnableCustomFiltering=true and EnableFiltering=true
Completed
Last Updated: 09 Mar 2015 13:47 by ADMIN
RADGRIDVIEW Extend it with the following localization string ids:

– RadGridStringId.FilterMenuSelectionTrue
– RadGridStringId.FilterMenuSelectionFalse

Resolution: 
The mentioned strings are not predefined strings within RadGridView. They come from the values of the column being filtered (e.g. if the column is a checkbox column, all values are either True or False). Therefore, to localize them, you need to use a ValueConverter and override the conversion to string:

    this.radGridView1.Columns[3].DataTypeConverter = new MyConverter();

    class MyConverter : BooleanConverter
    {
        public override object ConvertTo(ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, Type destinationType)
        {
            if (destinationType == typeof(string))
            {
                if (Object.Equals(value, "True") || (value is bool && (bool)value))
                    return "Yes";

                if (Object.Equals(value, "False") || (value is bool && !(bool)value))
                    return "No";
            }

            return base.ConvertTo(context, culture, value, destinationType);
        }
    }
Completed
Last Updated: 30 Jul 2013 06:30 by ADMIN
To reproduce: Create a project with RadGridView, add some rows, make sure you have space to perform panning. Exception should occur. Workaround: this.myGridView.ViewDefinition = new MyTableViewDefinition(); public class MyTableViewDefinition : TableViewDefinition { public override IRowView CreateViewUIElement(GridViewInfo viewInfo) { return new MyGridTableElement(); } } public class MyGridTableElement : GridTableElement { protected override void OnPanGesture(Telerik.WinControls.PanGestureEventArgs args) { if (args.IsBegin && (this.RowScroller.Scrollbar.ControlBoundingRectangle.Contains(args.Location) || this.ColumnScroller.Scrollbar.ControlBoundingRectangle.Contains(args.Location) || this.ViewElement.TopPinnedRows.ControlBoundingRectangle.Contains(args.Location))) { return; } bool containsCurrent = (this.GridViewElement.CurrentRow == null && this.GridViewElement.Template == this.ViewTemplate); if (!containsCurrent) { foreach (IRowView child in this.GridViewElement.GetRowViews(this.GridViewElement.CurrentRow.ViewInfo)) { containsCurrent |= (child == this); } } if (!containsCurrent) { return; } this.GridViewElement.EndEdit(); int newVerticalValue = this.RowScroller.Scrollbar.Value - args.Offset.Height; if (newVerticalValue > this.RowScroller.Scrollbar.Maximum - this.RowScroller.Scrollbar.LargeChange + 1) { newVerticalValue = this.RowScroller.Scrollbar.Maximum - this.RowScroller.Scrollbar.LargeChange + 1; } if (newVerticalValue < this.RowScroller.Scrollbar.Minimum) { newVerticalValue = this.RowScroller.Scrollbar.Minimum; } this.RowScroller.Scrollbar.Value = newVerticalValue; int newHorizontalValue = this.ColumnScroller.Scrollbar.Value - args.Offset.Width; if (newHorizontalValue > this.ColumnScroller.Scrollbar.Maximum - this.ColumnScroller.Scrollbar.LargeChange + 1) { newHorizontalValue = this.ColumnScroller.Scrollbar.Maximum - this.ColumnScroller.Scrollbar.LargeChange + 1; } if (newHorizontalValue < this.ColumnScroller.Scrollbar.Minimum) { newHorizontalValue = this.ColumnScroller.Scrollbar.Minimum; } RadScrollBarElement scrollbar = this.ColumnScroller.Scrollbar; if (newHorizontalValue > scrollbar.Maximum) { newHorizontalValue = scrollbar.Maximum; } else if (newHorizontalValue < 0) { newHorizontalValue = 0; } this.ColumnScroller.Scrollbar.Value = newHorizontalValue; args.Handled = true; } }
Completed
Last Updated: 30 Jul 2013 03:20 by ADMIN
To reproduce:
Generate the hierarchy with the following code:
radGridView1.SelectionMode = GridViewSelectionMode.CellSelect;
            radGridView1.MultiSelect = true;
            radGridView1.ClipboardCopyMode = GridViewClipboardCopyMode.EnableWithoutHeaderText;
            radGridView1.ClipboardPasteMode = GridViewClipboardPasteMode.Enable;
            radGridView1.AutoGenerateColumns = true;

            radGridView1.CellValueChanged += grid_CellValueChanged;
            //radGridView1.ViewCellFormatting += GridCellFormatting;
            //radGridView1.RowFormatting += grid_RowFormatting;
            radGridView1.EnableSorting = true;
            //radGridView1.MasterTemplate.EnableCustomSorting = true;
            radGridView1.AllowMultiColumnSorting = true;
            radGridView1.ShowGroupPanel = true;
            radGridView1.EnableFiltering = true;
            radGridView1.ShowFilteringRow = false;
            radGridView1.MasterTemplate.ShowHeaderCellButtons = true;

            DataTable dt1 = new DataTable();
            dt1.Columns.Add("Column1");
            dt1.Columns.Add("Column2");
            dt1.Columns.Add("Column3");
            dt1.Columns.Add("Column4");
            dt1.Columns.Add("Column5");
            dt1.Columns.Add("Column6");
            dt1.Columns.Add("Column7");
            dt1.Columns.Add("Column8");
            dt1.Columns.Add("Column9");
            dt1.Columns.Add("Column10");
            DataTable dt2 = new DataTable();
            dt2.Columns.Add("Column1");
            dt2.Columns.Add("Column2");
            dt2.Columns.Add("Column3");
            dt2.Columns.Add("Column4");
            dt2.Columns.Add("Column5");
            dt2.Columns.Add("Column6");
            dt2.Columns.Add("Column7");
            dt2.Columns.Add("Column8");
            dt2.Columns.Add("Column9");

            var temp = new GridViewTemplate();
            temp.AutoGenerateColumns = true;
            radGridView1.Templates.Add(temp);
            var rel = new GridViewRelation(radGridView1.MasterTemplate, temp);
            rel.ChildColumnNames.Add("Column1");
            rel.ParentColumnNames.Add("Column1");
            radGridView1.Relations.Add(rel);

            radGridView1.MasterTemplate.DataSource = dt1;
            dt1.Rows.Add(1, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);
            dt1.Rows.Add(2, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);
            dt1.Rows.Add(3, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);
            dt1.Rows.Add(4, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);
            dt1.Rows.Add(5, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);

            dt2.Rows.Add(1, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            dt2.Rows.Add(1, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            dt2.Rows.Add(1, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            dt2.Rows.Add(2, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            dt2.Rows.Add(2, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            temp.DataSource = dt2;

1. Run the project with the generated hierarchy
2. Select second cell in first row.
3. Expand first row and select 3 cells in fifth column by mouse drag
4. Right click on selection and "Copy" or press Ctrl+C.
5. Try to Paste the data into 7-th column.
6. The data is pasted in the second column
Completed
Last Updated: 30 Jul 2013 03:09 by ADMIN
To reproduce:
Generate the hierarchy with the following code:
radGridView1.SelectionMode = GridViewSelectionMode.CellSelect;
            radGridView1.MultiSelect = true;
            radGridView1.ClipboardCopyMode = GridViewClipboardCopyMode.EnableWithoutHeaderText;
            radGridView1.ClipboardPasteMode = GridViewClipboardPasteMode.Enable;
            radGridView1.AutoGenerateColumns = true;

            radGridView1.CellValueChanged += grid_CellValueChanged;
            //radGridView1.ViewCellFormatting += GridCellFormatting;
            //radGridView1.RowFormatting += grid_RowFormatting;
            radGridView1.EnableSorting = true;
            //radGridView1.MasterTemplate.EnableCustomSorting = true;
            radGridView1.AllowMultiColumnSorting = true;
            radGridView1.ShowGroupPanel = true;
            radGridView1.EnableFiltering = true;
            radGridView1.ShowFilteringRow = false;
            radGridView1.MasterTemplate.ShowHeaderCellButtons = true;

            DataTable dt1 = new DataTable();
            dt1.Columns.Add("Column1");
            dt1.Columns.Add("Column2");
            dt1.Columns.Add("Column3");
            dt1.Columns.Add("Column4");
            dt1.Columns.Add("Column5");
            dt1.Columns.Add("Column6");
            dt1.Columns.Add("Column7");
            dt1.Columns.Add("Column8");
            dt1.Columns.Add("Column9");
            dt1.Columns.Add("Column10");
            DataTable dt2 = new DataTable();
            dt2.Columns.Add("Column1");
            dt2.Columns.Add("Column2");
            dt2.Columns.Add("Column3");
            dt2.Columns.Add("Column4");
            dt2.Columns.Add("Column5");
            dt2.Columns.Add("Column6");
            dt2.Columns.Add("Column7");
            dt2.Columns.Add("Column8");
            dt2.Columns.Add("Column9");

            var temp = new GridViewTemplate();
            temp.AutoGenerateColumns = true;
            radGridView1.Templates.Add(temp);
            var rel = new GridViewRelation(radGridView1.MasterTemplate, temp);
            rel.ChildColumnNames.Add("Column1");
            rel.ParentColumnNames.Add("Column1");
            radGridView1.Relations.Add(rel);

            radGridView1.MasterTemplate.DataSource = dt1;
            dt1.Rows.Add(1, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);
            dt1.Rows.Add(2, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);
            dt1.Rows.Add(3, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);
            dt1.Rows.Add(4, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);
            dt1.Rows.Add(5, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);

            dt2.Rows.Add(1, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            dt2.Rows.Add(1, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            dt2.Rows.Add(1, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            dt2.Rows.Add(2, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            dt2.Rows.Add(2, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            temp.DataSource = dt2;

1. Run the project with the generated hierarchy
2. Select Last cell in first row. (there is no "Column9" in Child Template)
3. Expand first row and select any cell in first child row.
4. Hold Shift-Key and press down arrow or up arrow until you receive a NullReferenceException.
Completed
Last Updated: 30 Jul 2013 02:55 by ADMIN
To reproduce: 
- generate the hierarchy using the following code:
radGridView1.SelectionMode = GridViewSelectionMode.CellSelect;
            radGridView1.MultiSelect = true;
            radGridView1.ClipboardCopyMode = GridViewClipboardCopyMode.EnableWithoutHeaderText;
            radGridView1.ClipboardPasteMode = GridViewClipboardPasteMode.Enable;
            radGridView1.AutoGenerateColumns = true;

            radGridView1.CellValueChanged += grid_CellValueChanged;
            radGridView1.EnableSorting = true;
            radGridView1.AllowMultiColumnSorting = true;
            radGridView1.ShowGroupPanel = true;
            radGridView1.EnableFiltering = true;
            radGridView1.ShowFilteringRow = false;
            radGridView1.MasterTemplate.ShowHeaderCellButtons = true; 

            DataTable dt1 = new DataTable();
            DataTable dt2 = new DataTable();
            for (int i = 0; i < 10; i++)
            {
                dt1.Columns.Add("Column" + i);
                dt2.Columns.Add("Column" + i);
            }

            var temp = new GridViewTemplate();
            temp.AutoGenerateColumns = true;
            radGridView1.Templates.Add(temp);
            var rel = new GridViewRelation(radGridView1.MasterTemplate, temp);
            rel.ChildColumnNames.Add("Column1");
            rel.ParentColumnNames.Add("Column1");
            radGridView1.Relations.Add(rel);

            radGridView1.MasterTemplate.DataSource = dt1;
            dt1.Rows.Add(1, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);
            dt1.Rows.Add(2, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);
            dt1.Rows.Add(3, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);
            dt1.Rows.Add(4, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);
            dt1.Rows.Add(5, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6, 9);

            dt2.Rows.Add(1, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            dt2.Rows.Add(1, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            dt2.Rows.Add(1, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            dt2.Rows.Add(2, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            dt2.Rows.Add(2, "sdf", "sdfsfqwert", 1, 2, 3, 4, 7, 6);
            temp.DataSource = dt2;

1. Run the project with the generated hierarchy
2. Select second cell in first row.
3. Expand first row and select fifth cell in first child row.
4. Hold Shift-Key and press down arrow after that right arrow twice.
selection will be incorrect
Completed
Last Updated: 21 Aug 2015 13:46 by ADMIN
Description: When we scroll the RadGridView from Top to Bottom and Bottom to Top the first record is cut off, if we click the refresh button then it will be displayed properly. 

To reproduce:
- add a RadGridView to a form
- add a RadButton to a form
- use the following code snippet:

public Form1()
        {
            InitializeComponent();

            radGridView1.MasterTemplate.AutoSizeColumnsMode = GridViewAutoSizeColumnsMode.None;
            radGridView1.EnableCustomFiltering = false;
            this.radGridView1.AutoSizeRows = true;

            radGridView1.Columns["CustomerID"].Width = 100;
            radGridView1.Columns["CompanyName"].Width = 150;
            radGridView1.Columns["ContactName"].Width = 150;
            radGridView1.Columns["Country"].Width = 100;
            radGridView1.Columns["Phone"].Width = 90;
            radGridView1.Columns["Fax"].Width = 90;

            radGridView1.Columns["Phone"].AllowFiltering = false;
            radGridView1.Columns["Fax"].AllowFiltering = false;
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            // TODO: This line of code loads data into the 'nwindDataSet.Customers' table. You can move, or remove it, as needed.
            this.customersTableAdapter.Fill(this.nwindDataSet.Customers);

        }

        private void radButton1_Click(object sender, EventArgs e)
        {
            Form1_Load(sender, e);
        }
Completed
Last Updated: 17 Oct 2013 09:13 by Jesse Dyck
To reproduce: 
            radChartView1 = new RadChartView();
            radChartView1.Parent = this;
            radChartView1.Dock = DockStyle.Fill;

            radChartView1.ShowGrid = true;
            CartesianGrid grid = ((CartesianGrid)radChartView1.GetArea<CartesianArea>().Grid);
            grid.DrawVerticalFills = true;
            grid.AlternatingHorizontalColor = false;
            grid.AlternatingVerticalColor = false;
            grid.BackColor = Color.Red;
            grid.ForeColor = Color.Blue;
            grid.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Solid;

            DateTimeContinuousAxis horizontalAxis = new DateTimeContinuousAxis();
            horizontalAxis.MajorStepUnit = Telerik.Charting.TimeInterval.Day;
            horizontalAxis.MajorStep = 2;
            horizontalAxis.LabelFormat = "{0:dd/MM/yyyy}";
            LinearAxis verticalAxis1 = new LinearAxis();
            verticalAxis1.AxisType = AxisType.Second;
            LinearAxis verticalAxis2 = new LinearAxis();
            verticalAxis2.AxisType = AxisType.Second;
            verticalAxis2.HorizontalLocation = AxisHorizontalLocation.Right;

            LineSeries line1 = new LineSeries();
            line1.HorizontalAxis = horizontalAxis;
            line1.VerticalAxis = verticalAxis1;

            LineSeries line2 = new LineSeries();
            line2.HorizontalAxis = horizontalAxis;
            line2.VerticalAxis = verticalAxis2;

            line1.DataPoints.Add(new CategoricalDataPoint(26d, DateTime.Now.AddDays(-6)));
            line1.DataPoints.Add(new CategoricalDataPoint(20d, DateTime.Now.AddDays(-5)));
            line1.DataPoints.Add(new CategoricalDataPoint(12d, DateTime.Now.AddDays(-4)));
            line1.DataPoints.Add(new CategoricalDataPoint(15d, DateTime.Now.AddDays(-2)));
            line1.DataPoints.Add(new CategoricalDataPoint(21d, DateTime.Now.AddDays(-1)));

            line2.DataPoints.Add(new CategoricalDataPoint(32d, DateTime.Now.AddDays(-6)));
            line2.DataPoints.Add(new CategoricalDataPoint(52d, DateTime.Now.AddDays(-4)));
            line2.DataPoints.Add(new CategoricalDataPoint(35d, DateTime.Now.AddDays(-3)));
            line2.DataPoints.Add(new CategoricalDataPoint(36d, DateTime.Now.AddDays(-2)));
            line2.DataPoints.Add(new CategoricalDataPoint(11d, DateTime.Now.AddDays(-1)));

            this.radChartView1.Series.Add(line1);
            this.radChartView1.Series.Add(line2);

Workaround - no
Completed
Last Updated: 17 Nov 2015 16:26 by ADMIN
To reproduce
- add Calculator column in the grid
- set the EnterKeyMode to EnterMovesToNextRow
- press enter when the cell is in edit mode.

Workaround:

-use custom GridDataRowBehavior like this:

class MyNewEnterBehavior : GridDataRowBehavior
{
    bool firstTime = true;
    protected override bool ProcessEnterKey(KeyEventArgs keys)
    {
        if (this.GridControl.IsInEditMode && this.GridControl.CurrentColumn is GridViewCalculatorColumn )
        {

            if (firstTime)
            {
                firstTime = false;
                return false;
            }
            firstTime = true;
            return base.ProcessEnterKey(keys); 
        }
        return base.ProcessEnterKey(keys);
    } 
}
Completed
Last Updated: 20 Jan 2015 11:39 by ADMIN
To repriduce:
- Add a grid with Office2007Theme applied and sort by one of the columns
- Set RightToLeft to true
- Make sure the column width is no wider than the text

Workaround:
        void radGridView1_ViewCellFormatting(object sender, Telerik.WinControls.UI.CellFormattingEventArgs e) 
        { 
            GridHeaderCellElement headerCell = e.CellElement as GridHeaderCellElement;   

            if (headerCell != null) 
            { 
                if (radGridView1.ThemeName == "Office2007Silver" && e.Column.IsSorted) 
                { 
                    headerCell.Arrow.Alignment = ContentAlignment.TopCenter; 
                    headerCell.Arrow.Margin = new Padding(0, 1, 0, 0); 
                } 
            } 
        }
Completed
Last Updated: 20 Oct 2014 12:00 by ADMIN
Add support for the GridViewComboBoxColumn to initialize properly when the BindingList it is bound to is empty.
Completed
Last Updated: 11 Feb 2014 13:56 by ADMIN
To reproduce :
Create a self-referencing hierarchy, bind it to a BindingList and delete the row with either the delete button or from the context menu and click the deleted item. 
Workaround :
Find the object that has to be deleted, hide the selected row and remove the found object from the data source.
void radGridView1_UserDeletingRow(object sender, GridViewRowCancelEventArgs e)
{
    e.Cancel = true;
    int id = int.Parse(e.Rows[0].Cells["Id"].Value.ToString());
    var human = this.humans.FirstOrDefault(x => x.Id == id);
    if (human != null)
    {
        this.radGridView1.SelectedRows[0].IsVisible = false;
        this.humans.Remove(human);
    }
}
Completed
Last Updated: 13 Nov 2015 15:17 by ADMIN
To reproduce:  Dim dockmem As New MemoryStream
    Dim gridmem As New MemoryStream

    Public Sub SetData()

        ' dgvSelectList.DataSource = Nothing
        Dim dt As DataTable
        dt = New DataTable

        dt.Columns.Add("VENDCODE")
        dt.Columns.Add("VENDNAME")
        dt.Rows.Add("AA2", "Arthur")
        dt.Rows.Add("AA2", "Arthur")

        dgvSelectList.DataSource = dt
        dgvSelectList.BestFitColumns()
    End Sub

    Private Sub frmSelectListNG2_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        SetData()
        dgvSelectList.EnableFiltering = False
        'Save Grid and Dock layout settings to mem stream and simulate my process
        SaveSettings()
    End Sub

    Public Sub btnGO_Click(sender As System.Object, e As System.EventArgs) Handles btnGO.Click
        LoadSettings()
        dgvSelectList.SplitMode = RadGridViewSplitMode.Horizontal
        SetData()
        LoadSettings()
    End Sub

    Private Sub LoadSettings()
        gridmem.Position = 0
        dockmem.Position = 0
        dgvSelectList.LoadLayout(gridmem)
        rdkSelect.LoadFromXml(dockmem)
    End Sub

    Private Sub SaveSettings()
        gridmem.Position = 0
        dockmem.Position = 0
        dgvSelectList.SaveLayout(gridmem)
        rdkSelect.SaveToXml(dockmem)
    End Sub

Workaround - set the datasource to Nothing prior rebinding
Completed
Last Updated: 21 Aug 2015 13:17 by ADMIN
To reproduce:
  radGridView1 = new RadGridView();
            radGridView1.Dock = DockStyle.Fill;
            
            Controls.Add(radGridView1);

            t.Columns.Add("ID");
            t.Rows.Add(7);
            t.Rows.Add(5);
            t.Rows.Add(8);
            t.Rows.Add(4);
            t.Rows.Add(9);
            radGridView1.DataSource = t;
            radGridView1.Columns[0].Width = 100;

With the code above, start the app, sort the grid ascending and select the row with value 8. Use the following code on a button to delete the row with value 5:
  private void radButton1_Click(object sender, EventArgs e)
        {
            t.Rows[1].Delete();
        }

In this case, the current should be the row with value 8, not the one with value 7 as is.
Completed
Last Updated: 20 Aug 2015 13:24 by Scott
To reproduce:
- Create a grid with ColumnGroupsViewDefinition view( Column Groups View)
- Set the AutoSizeColumnsMode to fill 
- Start the project and resize a column
- Resize a column then minimize and maximize
- The column have a different size

Workaround:
-Handle the form layout event like this:
void Form1_Layout(object sender, LayoutEventArgs e)
{
    if (this.WindowState == FormWindowState.Minimized)
    {
        this.radGridView1.GridElement.SuspendLayout();
    }
    else
    {
        this.radGridView1.GridElement.ResumeLayout(true);
    }
}
Completed
Last Updated: 14 Sep 2015 11:42 by ADMIN
To reproduce:

  public Form1()
        {
            InitializeComponent();

            Random r = new Random();
            DataTable table = new DataTable("table1");
            table.Columns.Add("ID", typeof(int));
            table.Columns.Add("Name", typeof(string));
            table.Columns.Add("Bool", typeof(bool));
            table.Columns.Add("DateColumn", typeof(DateTime));

            for (int i = 0; i < 10; i++)
            {
                table.Rows.Add(i, "Row " + i, r.Next(10) > 5 ? true : false, DateTime.Now.AddHours(i));
            }

            DataSet dataSet = new DataSet();
            dataSet.Tables.Add(table);

            radGridView1.DataBindingComplete += radGridView1_DataBindingComplete;
            this.radGridView1.DataSource = dataSet;
            this.radGridView1.DataMember = "table1";
        
        }

        void radGridView1_DataBindingComplete(object sender, GridViewBindingCompleteEventArgs e)
        {
            
        }
Completed
Last Updated: 15 Jul 2013 08:51 by ADMIN
To reproduce:
-set AutoSizeMode to Fill
- Add view definition with two rows
- Add check box column to the view
-Set check box column minWidth 

Workaround:
Create a custom view definition, then create a custom ColumnGroupRowLayout class and override the GetClumnWidth method like this:
class MyViewDefinition : ColumnGroupsViewDefinition
{
 
    public MyViewDefinition()
    {
             
    }
    public override IGridRowLayout CreateRowLayout()
    {
        return new MyRowLayout(this);
    }
}
 
public class MyRowLayout : ColumnGroupRowLayout
{
 
    public MyRowLayout(ColumnGroupsViewDefinition view):base(view)
    {
 
    }
 
    public override int GetColumnWidth(GridViewColumn column)
    {
        return Math.Max( base.GetColumnWidth(column), column.MinWidth);
    }
}
Completed
Last Updated: 18 Dec 2015 15:17 by ADMIN
To reproduce
Switch to Right-to-Left mode.
Look at the top left corner of the grid.

Workaround
this.radGridView1.TableElement.Children[0].Margin = new Padding(-2, 0, 0, 0);
Completed
Last Updated: 22 Apr 2014 00:22 by Matt
IMPROVE. RadGridView - when sorting grouped combo box column the DisplayMemberSort is not taken into consideration