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
Completed
Last Updated: 13 Jun 2014 14:25 by ADMIN
Steps to reproduce:
1. Add a grid with several columns, so there is horizontal scroll bar
2. Add an image to the grid ImageList
3. In the CellFormatting assign the ImageKey of a cell to a value
You will notice that the images are not applied initially. You have to scroll the column where you apply the images out of view and bring it back in to see the images.

WORKAROUND

Instead of setting the ImageKey property, set the Image property to the corresponding image from the image list.
Completed
Last Updated: 17 Nov 2015 16:27 by ADMIN
Workaround: Use a custom editor and override IsModified method: 
class MyEditor : RadDropDownListEditor 
{
 public override bool IsModified 
{
 get 
{
 return true; 
}
 }
 }

 void radGridViewFilter_EditorRequired(object sender, EditorRequiredEventArgs e) 
{
 if (e.EditorType == typeof(RadDropDownListEditor)) { e.Editor = new MyEditor(); 
}
}
Completed
Last Updated: 10 Sep 2015 11:09 by ADMIN
RadGridView.- HierarchyDataProvider property of the GridViewTemplate should be set after the GridViewTemplate  is added to Templates Collection.
Declined
Last Updated: 02 Dec 2015 13:30 by ADMIN
When a mask is set to a GridViewMaskBoxColumn and string is applied as value, the visual element will show only the string without the mask literals. E.g. mask is set to ####/# and value is set to string "11112" the view will be 11112 instead of 1111/2.

Ways to achieve this: 
1. Use CellFormatting.
2. Use a custom type converter:
Example of a custom TypeConverter could be seen from the following feedback item: http://feedback.telerik.com/Project/154/Feedback/Details/112463-fix-radgridview-the-textmaskformat-property-of-gridviewmaskboxcolumn-is-not-ta
Completed
Last Updated: 26 Jun 2013 07:55 by ADMIN
Steps to reproduce: 1. Add three rows to a grid 2. Filter one through CustomFiltering 3. Run the project and apply a filter that will filter one of the remaining two rows 4. Now delete the filter value. You will see that the second row will not be visible although there is no filter. WORKAROUND Clear the filter on the column when the user deletes the value of the filter: private void radGridView1_ValueChanging(object sender, ValueChangingEventArgs e) { if (this.radGridView1.CurrentColumn.Name == "ColumnName" && Convert.ToString(e.NewValue) == String.Empty) { int i = 0; while (i < this.radGridView1.FilterDescriptors.Count) { if (this.radGridView1.FilterDescriptors[i].PropertyName == "ColumnName") { this.radGridView1.FilterDescriptors.RemoveAt(i); continue; } i++; } } }
Completed
Last Updated: 01 Jun 2015 07:09 by ADMIN
RadGridView - You cannot select cells only from Pinned Columns if under them there is unpinned one.

Steps to reproduce:
1. Set SelectionMode property of RadGridView to GridViewSelectionMode.CellSelect.
2. Create 3 left pinned columns
3. Create several unpinned columns.
4. Scroll horizontal scroll bar to hide several unpinned columns under the pinned.
5. Try to select only pinned cells with the selection rectangle.
Completed
Last Updated: 17 Nov 2015 16:26 by ADMIN
In RadGridView with a TextBoxColumn.
  Set WrapText, Multiline and AcceptsReturn to true
  If  adding a new line, the return gives another new line instead of staying within the cell.

Workaround:
  Create a new behavior class:
//VB
Class MyNewRowBehavior
    Inherits GridNewRowBehavior
    Protected Overrides Function ProcessEnterKey(keys As KeyEventArgs) As Boolean
        If Me.GridControl.IsInEditMode AndAlso Me.GridControl.CurrentColumn.Name = "TextBoxColumn" Then
            Dim editor As RadTextBoxEditor = TryCast(Me.GridControl.ActiveEditor, RadTextBoxEditor)
            Dim element As RadTextBoxEditorElement = DirectCast(editor.EditorElement, RadTextBoxEditorElement)

            element.Text.Insert(element.Text.Length, Environment.NewLine)
            Return True
        Else
            Return MyBase.ProcessEnterKey(keys)
        End If
    End Function
End Class

//C#
class MyNewRowBehavior : GridNewRowBehavior
{
    protected override bool ProcessEnterKey(KeyEventArgs keys)
    {
        if (this.GridControl.IsInEditMode && this.GridControl.CurrentColumn.Name == "TextBoxColumn")
        {
            RadTextBoxEditor editor = this.GridControl.ActiveEditor as RadTextBoxEditor;
            RadTextBoxEditorElement element = (RadTextBoxEditorElement)editor.EditorElement;

            element.Text.Insert(element.Text.Length, Environment.NewLine);
            return true;
        }
        else
        {
            return base.ProcessEnterKey(keys);
        }
    }
}

then unregister the old behavior and register the new one:
//VB
DirectCast(radGridView1.GridBehavior, BaseGridBehavior).UnregisterBehavior(GetType(GridViewNewRowInfo))
DirectCast(radGridView1.GridBehavior, BaseGridBehavior).RegisterBehavior(GetType(GridViewNewRowInfo), New MyNewRowBehavior())

//C#
((BaseGridBehavior)radGridView1.GridBehavior).UnregisterBehavior(typeof(GridViewNewRowInfo));
((BaseGridBehavior)radGridView1.GridBehavior).RegisterBehavior(typeof(GridViewNewRowInfo), new MyNewRowBehavior());
Completed
Last Updated: 20 Jun 2013 05:03 by ADMIN
Workaround, use the following behavior:

 public class CustomDataRowBehavior : GridDataRowBehavior
    {
        protected override bool OnMouseDownRight(MouseEventArgs e)
        {
            if (this.IsInEditMode && !this.GridViewElement.EndEdit())