Completed
Last Updated: 21 Nov 2024 13:15 by ADMIN
Release 2024.4.1113 (2024 Q4)
In this case, we have GridViewCalculatorColumn. The cell value is 123, for example. Trying to edit the cell value, the RadCalculatorEditor reset the cell value to 0. 
Completed
Last Updated: 12 Feb 2025 12:41 by ADMIN
Release 2025.1.211 (2025 Q1)
Completed
Last Updated: 12 Feb 2025 12:41 by ADMIN
Release 2025.1.211 (2025 Q1)
EndEdit() method is not called of IEditableObject if an exception is thrown while setting a null value to the bound property
Completed
Last Updated: 07 Aug 2024 15:11 by ADMIN
Release 2024.3.806 (2024 Q3)
Completed
Last Updated: 15 May 2024 07:49 by ADMIN
Release 2024.2.514 (2024 Q2)
NullReferenceException occurs in a multi-select scenario when clicking (and holding the mouse button) on an empty area in the grid and the mouse leaves the boundaries of the control.
Completed
Last Updated: 15 May 2024 07:49 by ADMIN
Release 2024.2.514 (2024 Q2)

In this scenario, the RadGridView.DataSource property is set to Microsoft.EntityFrameworkCore.ChangeTracking.ObservableCollectionListSource. When the RadGridView.Rows.Remove() method is called an IndexOutOfRange exception is thrown.

 


Completed
Last Updated: 13 Mar 2024 08:49 by ADMIN
Release 2024.1.312
When I work with RadGridView component, the "RadGridView Property Builder" closes unexpectedly. It happens when I make the following steps:

1. RadGridView properties AutoSizeRow set to true.

2. Column Group properties ShowHeader set to false. 
Completed
Last Updated: 13 Mar 2024 08:49 by ADMIN
Release 2024.1.312
Completed
Last Updated: 31 Jan 2024 11:39 by ADMIN
Release 2024 Q1 (2024.1.130)

In this case, the culture of the application is different from the culture of the machine. In this particular case, both cultures have different long date time format strings. current format mm/dd/yyyy compare to the one which the control is loading dd/mm/yyyy.

As a workaround, we can apply InvariantCulture before loading the XML and return the previous one after this:

CultureInfo.CurrentCulture = CultureInfo.InvariantCulture;
grid.LoadLayout(xml);
CultureInfo.CurrentCulture = CultureInfo.GetCultureInfo("en-US");

 

Completed
Last Updated: 11 Oct 2023 10:11 by ADMIN
Release R3 2023
Changes to the bonded ObservableCollection are not reflected in the control
Completed
Last Updated: 16 Aug 2023 10:51 by ADMIN
Release R3 2023 (LIB 2023.2.816)

Please refer to the attached sample video.

StackTrace: 

Message: Object reference not set to an instance of an object.
Telerik.WinControls.UI.RadGridViewDragDropService.GetDragImageHint(ContentAlignment textAlignment, Bitmap hintImage, RectangleF textRectangle, Int32 hintImageWidth)
Telerik.WinControls.UI.ColumnChooserItem.GetDragHintCore()
Telerik.WinControls.RadItem.Telerik.WinControls.ISupportDrag.GetDragHint()
Telerik.WinControls.RadDragDropService.PrepareContext():80
Telerik.WinControls.RadDragDropService.HandleMouseMove(Point mousePos):40
Telerik.WinControls.UI.RadGridViewDragDropService.HandleMouseMove(Point mousePosition):13
Telerik.WinControls.RadDragDropService.Telerik.WinControls.IMessageListener.PreviewMessage(Message& msg):150
Telerik.WinControls.RadMessageFilter.NotifyGetMessageEvent(Message& msg):41
Telerik.WinControls.RadMessageFilter.GetMessageHookProc(Int32 code, IntPtr wParam, IntPtr lParam):36

Completed
Last Updated: 18 Jul 2023 14:26 by ADMIN
Release R2 2023 SP1
This exception was caught when deleting the text in the search row letter by letter. Deleting the last letter leads to errors in some cases. Internally in the GridDataCellElement GetSearchHighlightRanges() method, the Text.Length property is used. However, when the Text is null an exception will be raised. So far this exception was not isolated in a sample project. Still, it could be consider adding a null check for the Text property of the cell.
Completed
Last Updated: 16 Aug 2023 10:51 by ADMIN
Release R3 2023 (LIB 2023.2.816)

Code snippet for reproducing the error: 

            DataTable dt = new DataTable();
            dt.Columns.Add("Id", typeof(int));
            dt.Columns.Add("Title", typeof(string));
            dt.Columns.Add("Price", typeof(decimal));

            for (int i = 0; i < 10; i++)
            {
                dt.Rows.Add(i, "Row" + i, 0);
            }

            this.radGridView1.DataSource = dt;
            this.radGridView1.AutoSizeColumnsMode = GridViewAutoSizeColumnsMode.Fill;

            GridViewSummaryItem summaryItem = new GridViewSummaryItem();
            summaryItem.Name = "Price";
            summaryItem.Aggregate = GridAggregateFunction.StDev;
            GridViewSummaryRowItem summaryRowItem = new GridViewSummaryRowItem();
            summaryRowItem.Add(summaryItem); 
            this.radGridView1.SummaryRowsBottom.Add(summaryRowItem);

Completed
Last Updated: 18 Jul 2023 14:26 by ADMIN
Release R2 2023 SP1

With the current implementation, you can drop a column from the ColumnChooser window into the row. The column will be added to a place that reflects its position in the RadGridView Columns collection. 

Completed
Last Updated: 11 Oct 2023 10:09 by ADMIN
Release R3 2023

To reproduce:

      public RadForm1()
      {
         InitializeComponent();
         PopulateGrid();
      }

      private void radButton1_Click(object sender, EventArgs e)
      {
         GridViewSpreadExport spreadExporter = new GridViewSpreadExport(this.radGridView1);
         SpreadExpo

rtRenderer exportRenderer = new SpreadExportRenderer();
         spreadExporter.ExportHierarchy = true;
         spreadExporter.ExportVisualSettings = true;
         spreadExporter.ChildViewExportMode = Telerik.WinControls.UI.Export.ChildViewExportMode.ExportAllViews;

         string fileName = @"..\..\exportedFile" + DateTime.Now.ToLongTimeString().Replace(":", "_") + ".xlsx";
         spreadExporter.RunExport(fileName, exportRenderer);
         Process.Start(fileName);
      }

      public void PopulateGrid()
      {
         List<GridResults.ChildCollectionFirst> firstCollection = new List<GridResults.ChildCollectionFirst>
         {
            new GridResults.ChildCollectionFirst
            {
               Test1 = "First Child"
            }
         }.ToList();

         List<GridResults.ChildCollectionSecond> secondCollection = new List<GridResults.ChildCollectionSecond>
         {
            new GridResults.ChildCollectionSecond
            {
               Test2 = "Second Child"
            }
         }.ToList();

         List<GridResults.ChildCollectionThird> thirdCollection = new List<GridResults.ChildCollectionThird>
         {
            new GridResults.ChildCollectionThird
            {
               Test3 = "Third Child"
            }
         }.ToList();

         List<GridResults.ChildCollectionFourth> fourthCollection = new List<GridResults.ChildCollectionFourth>
         {
            new GridResults.ChildCollectionFourth
            {
               Test4 = "Fourth Child"
            }
         }.ToList();


         var resultsList = new List<GridResults>
         {



            new GridResults
            {
               Id = "First Parent",
               Value = "Test Value 1",
               ChildCollection1 = new List<GridResults.ChildCollectionFirst>(),

               ChildCollection2 = new List<GridResults.ChildCollectionSecond>(),

               ChildCollection3 = new List<GridResults.ChildCollectionThird>(),

               ChildCollection4 = new List<GridResults.ChildCollectionFourth>()
            },
            new GridResults
            {
               Id = "Second Parent",
               Value = "Test Value 2",
               ChildCollection1 = firstCollection,

               ChildCollection2 = secondCollection,

               ChildCollection3 = thirdCollection,

               ChildCollection4 = fourthCollection
            },

            new GridResults
            {
            Id = "Third Parent",
            Value = "Test Value 3",
            ChildCollection1 = new List<GridResults.ChildCollectionFirst>(),

            ChildCollection2 = new List<GridResults.ChildCollectionSecond>(),

            ChildCollection3 = new List<GridResults.ChildCollectionThird>(),

            ChildCollection4 = new List<GridResults.ChildCollectionFourth>()
         },
            new GridResults
            {
               Id = "Fourth Parent",
               Value = "Test Value 4",
               ChildCollection1 = new List<GridResults.ChildCollectionFirst>(),

               ChildCollection2 = new List<GridResults.ChildCollectionSecond>(),

               ChildCollection3 = new List<GridResults.ChildCollectionThird>(),

               ChildCollection4 = new List<GridResults.ChildCollectionFourth>()
            },
            new GridResults
            {
            Id = "Fifth Parent",
            Value = "Test Value 5",
            ChildCollection1 = new List<GridResults.ChildCollectionFirst>(),

            ChildCollection2 = new List<GridResults.ChildCollectionSecond>(),

            ChildCollection3 = new List<GridResults.ChildCollectionThird>(),

            ChildCollection4 = new List<GridResults.ChildCollectionFourth>()
         },
         new GridResults
         {
            Id = "Sixth Parent",
            Value = "Test Value 6",
            ChildCollection1 = new List<GridResults.ChildCollectionFirst>(),

            ChildCollection2 = new List<GridResults.ChildCollectionSecond>(),

            ChildCollection3 = new List<GridResults.ChildCollectionThird>(),

            ChildCollection4 = new List<GridResults.ChildCollectionFourth>()
         }

         };
      //   radGridView1.BeginUpdate();
         radGridView1.DataSource = resultsList;
      //   radGridView1.EndUpdate();

            foreach (GridViewTemplate t in this.radGridView1.Templates)
            {
                t.AutoSizeColumnsMode= GridViewAutoSizeColumnsMode.Fill;
            }
      }

   public class GridResults
   {
      [DisplayName("ID")]
      public string Id { get; set; }

      [DisplayName("Value")]
      public string Value { get; set; }

      [DisplayName("Child Collection 1")]
      public List<ChildCollectionFirst> ChildCollection1 { get; set; }

      [DisplayName("Child Collection 2")]
      public List<ChildCollectionSecond> ChildCollection2 { get; set; }

      [DisplayName("Child Collection 3")]
      public List<ChildCollectionThird> ChildCollection3 { get; set; }

      [DisplayName("Child Collection 4")]
      public List<ChildCollectionFourth> ChildCollection4 { get; set; }

      [DisplayName("Child Collection 1")]
      public class ChildCollectionFirst
      {
         [DisplayName("Test Header")]
         public string Test1 { get; set; }
      }

      [DisplayName("Child Collection 2")]
      public class ChildCollectionSecond
      {
         [DisplayName("Test Header 2")]
         public string Test2 { get; set; }
      }

      [DisplayName("Child Collection 3")]
      public class ChildCollectionThird
      {
         [DisplayName("Test Header 3")]
         public string Test3 { get; set; }
      }

      [DisplayName("Child Collection 4")]
      public class ChildCollectionFourth
      {
         [DisplayName("Test Header 4")]
         public string Test4 { get; set; }
      }
   }

The observed result with duplicated rows is demonstrated here:

 

Completed
Last Updated: 07 Jun 2023 10:38 by ADMIN
Release R2 2023 (2023.2.606)

Use the code below and click the button to make the grid ReadOnly:

        public TestForm()
        {        
            InitializeComponent(); 
          
             GridViewCheckBoxColumn checkBoxColumn = new GridViewCheckBoxColumn("checkbox");
            checkBoxColumn.EnableHeaderCheckBox = true;
            this.radGridView1.Columns.Add(checkBoxColumn);
            this.radGridView1.Columns.Add("text");
            this.Shown += TestForm_Shown;
        }

        private void TestForm_Shown(object sender, EventArgs e)
        {
            this.radGridView1.Columns["checkbox"].IsVisible = !this.radGridView1.Columns["checkbox"].IsVisible;
        }

        private void radButton1_Click(object sender, EventArgs e)
        {
           
            this.radGridView1.ReadOnly = !this.radGridView1.ReadOnly;
        }

Completed
Last Updated: 18 Jul 2023 14:26 by ADMIN
Release R2 2023 SP1

Code to replicate the issue: 

            GridPrintStyle style = new GridPrintStyle();
            style.PrintHierarchy = true;
            style.HierarchyIndent = 0;
            style.ChildViewPrintMode = ChildViewPrintMode.SelectViewToPrint;
            this.radGridView1.PrintStyle = style;

            this.radGridView1.PrintPreview();

The attached gif file illustrates how the 20px hierarchy indent is returned after hitting the preview button.

Completed
Last Updated: 07 Jun 2023 10:38 by ADMIN
Release R2 2023 (2023.2.606)
In this case, the RadGridVew is bound to a BindingSource. Filtering the grid will apply the same filter expression to the BindingSource. When we try to clear the filter from the Popup, it will set an empty string to the Filter property of the BindingSource. At that moment NullReferenceException is thrown.
Completed
Last Updated: 13 Apr 2023 08:24 by ADMIN
Release R2 2023 (LIB 2023.1.413)
Created by: Shreya
Comments: 1
Category: GridView
Type: Bug Report
0
With the 2023.1.314 version of our controls, the RadGridView: GetClipboardContent() method returns null. It should return the DataObject.
Completed
Last Updated: 27 Apr 2023 06:55 by ADMIN
Release R2 2023 (LIB 2023.1.427)
This is reproducible when the ShowGroupedColumns is set to true. In this case, you can sort the group column by clicking on the column header or clicking on the group cell in the group panel. In this case, by clicking the column header, the user can only sort the column in descending mode.