Currently exporters do not respect the RightToLeft property of RadGridView and export the data always as left to right.
If RadGridView is bound to custom objects that implement IComparable<T>, Excel-like filtering does not work. Currently, the issue can be avoided through implementing IComparable instead.
1. Create a new project with RadGridView and add a button. 2. Run the project. 3. Click on a cell and start to edit. 4. Click on the button, it will not receive the click.
Try to set the number of columns for the RadGridView to greater than 11230 columns, it throws "An item with the same key has already been added." exception. It does not happen when the code is run for the first time, but on any subsequent calls. Step to reproduce: 1. Create project with Windows form 2. Place RadGridView on form 3. Add following code: private void Form1_Load(object sender, EventArgs e) { radGridView1.VirtualMode = true; radGridView1.ColumnCount = 15000; } 4. Run application multiple times and you will get an exception at some moment during start up. NO WORKAROUND
Wrong column name escaping in filter expression when the special symbols is used in the name like: "_x0000_", "_x0032_0", "_x0032_0_x0000_" in the bound data schema
Scroll bar calculations are wrong, when rows are hidden in CellClick event.
Typo error - "Lenght" instead of "Length", located under "Text" in the GridView expression editor
Workaround the issue by using the DataBindingComplete event in the following manner: private GridViewRowInfo oldCurrentRow = null; protected override void OnLoad(EventArgs e) { this.radGridView1.DataBindingComplete += this.OnDataBindingComplete; this.oldCurrentRow = this.radGridView1.CurrentRow; this.radGridView1.DataSource = Telerik.Help.Data.GetDummyEmployees(0); } private void OnDataBindingComplete(object sender, Telerik.WinControls.UI.GridViewBindingCompleteEventArgs e) { if (this.oldCurrentRow != this.radGridView1.CurrentRow && this.radGridView1.RowCount == 0) { this.radGridView1.MasterTemplate.EventDispatcher.RaiseEvent<CurrentRowChangedEventArgs>(EventDispatcher.CurrentRowChanged, this.radGridView1.MasterTemplate, new CurrentRowChangedEventArgs(null, null)); } this.oldCurrentRow = null; }
Let's have a RadGridView that is RightToLeft.Yes with at least three columns. In the CellFormatting event set RightToLeft.No to the CellElements that belong to the middle column. Now start dragging the last column (first in RightToLeft.Yes) so that it becomes bigger and its size goes beyond what RadGridView gives as available estate area. You will notice that the CellElements that are RightToLeft.No go in the opposite direction. Resolution: Currently, the correct way to achieve a grid with RightToLeft.Yes while some of its cells are RightToLeft.No is to use a custom column with custom cells: public class MyGridViewDecimalColumn : GridViewDecimalColumn { public MyGridViewDecimalColumn() : base() { } public MyGridViewDecimalColumn(string fieldName) : base(fieldName) { } public MyGridViewDecimalColumn(string fieldName, string uniqueName) : base(uniqueName, fieldName) { } public override Type GetCellType(GridViewRowInfo row) { if (row is GridViewDataRowInfo) { return typeof(MyGridDecimalCellElement); } return base.GetCellType(row); } } public class MyGridDecimalCellElement : GridDataCellElement { public MyGridDecimalCellElement(GridViewColumn col, GridRowElement row) : base(col, row) { } protected override Type ThemeEffectiveType { get { return typeof(GridDataCellElement); } } protected override Telerik.WinControls.Primitives.TextParams CreateTextParams() { Telerik.WinControls.Primitives.TextParams parameters = base.CreateTextParams(); parameters.rightToLeft = false; return parameters; } public override bool IsCompatible(GridViewColumn data, object context) { return base.IsCompatible(data, context) && data is GridViewDecimalColumn; } }
The editor does not remain focused when cell has invalid value and mouse down button is pressed over another cell.
Add a TextAlignment property of GridViewSummaryItem.
Description: Just use the button x times to show an additional form with a RadGridView Control on it. RadGridView is not releasing the complete allocated memory. JustTrace shows an increasing number of Telerik.WinControls.RadPropertyValue instances. Resolution: Not a memory leak. When a form is shown with the ShowDialog method, it should be explicitly disposed. If the form was shown using the Show method, the Dispose method does not need to be called explicitly. It will be called automatically when the form is closed. Source: MSDN http://msdn.microsoft.com/en-us/library/aw58wzka%28v=vs.110%29.aspx
To reproduce: - add couple columns in design time - populate them in the form's constructor - subscribe to the cell formatting event where validation will be performed The result is that the indent cell hover displays the error text set and the data cells are formatted correctly, but the exclamation mark is not displayed until the grid is scrolled. It seems that the indent cell is not invalidated WORKAROUND: Call the Refresh method of the template
Currently when exporting a grid if a cell value is null it is exported as an empty cell. The NullValue property of the cell column should be respected in this case.
Currently developers have access to the main table element and to the individual cells. There should be a way for developers to access the row elements.
DisableHTMLRendering property of the column does not effect the items in ColumnChooser.
When the pencil icon is clicked the RowValidating event must be fired. WORKAROUND: 1. When clicking the "pencil" icon, the current row is not changed, thus the RowValidating is not fired. A suitable event to cover this case is the CellValidating event which will be triggered when the "pencil" icon is clicked. 2. When the pencil is clicked, save the grid's CurrentRow, set it to null and then set it back to the saved row. This will trigger the RowValidating event and the desired logic will be executed. The downside of this approach is that the event will be triggered twice, because we change the CurrentRow twice. void radGridView1_MouseDown(object sender, MouseEventArgs e) { GridRowHeaderCellElement rowHeader = radGridView1.ElementTree.GetElementAtPoint(e.Location) as GridRowHeaderCellElement; if (rowHeader != null) { GridViewRowInfo saveRow = radGridView1.CurrentRow; radGridView1.CurrentRow = null; radGridView1.CurrentRow = saveRow; } }
DateTimeColumn should open hitting the F4 key. WORKAROUND: this.radGridView1.EditorRequired += new EditorRequiredEventHandler(radGridView1_EditorRequired); void radGridView1_EditorRequired(object sender, EditorRequiredEventArgs e) {
1. Create a new project and add RadGridView. 2. Bind it and set the IsVisible property for some rows to false. 3. Run the project. 4. Scroll to bottom.
The cell BorderLeftShadowColor, BorderRightShadowColor, BorderTopShadowColor, BorderBottomShadowColor cannot be styled through a GridViewCellStyle object.