To reproduce: Download the attached files. One contains a project with TelerikDataAccess, the other one contains the SQL script to create the database. Before starting the project notice the column with header text "column1". You will see that its expression is as follows: "Player.Person.FirstName+\",\"+Player.Person.LastName". Starting the project at this point will not produce an exception. Change the name of the column to FirstName and start the project, you will see the stack overflow exception.
The horizontal scrollbar of the control does not behave correctly when there are several pinned columns and their width is larger than the visible area of RadGridView.
The RadGridView should not leave its edit mode state, when scrolling is performed.
Workaround: set the data type of the column to null before saving the layout and after loading it set it with the needed type
RadGridView scrolls to the top when copy and paste operations are performed. The grid scrolls to left when there are a lot of columns as well. In addition this is only observed when the cell is not in edit mode. Workaround: public class MyGridBehavior : BaseGridBehavior { public override bool ProcessKey(KeyEventArgs keys) { bool isPaste = false; if (keys.Control && keys.KeyCode == Keys.V && this.GridViewElement.Template.ClipboardCopyMode != GridViewClipboardCopyMode.Disable) { if (!(this.GridViewElement.Template.GridReadOnly || this.GridViewElement.Template.ReadOnly)) { isPaste = true; } } GridTableElement currentTableElement = this.GridViewElement.CurrentView as GridTableElement; int vScroll = currentTableElement.VScrollBar.Value; int hScroll = currentTableElement.HScrollBar.Value; bool result = base.ProcessKey(keys); if (isPaste) { currentTableElement.VScrollBar.Value = vScroll; currentTableElement.HScrollBar.Value = hScroll; } return result; } } this.radGridView1.GridBehavior = new MyGridBehavior();
Horizontal cell navigation causes sometime scrolling per page instead of paging to the next invisible column.
RadGridView - the Row property in the event arguments of the RowValidating event is null when the user deletes a row. Also the Column property in the event arguments of the CellValidating event is null when the user deletes a row.
When add dg.Relations.AddSelfReference(dg.MasterTemplate,"ID", "IDPARENT"); The event bnds_PositionChanged works only when go with level on another. А within the one level does not work. Operation of the removing does not work too. Also is not working properly displaying alternative rows. EnableAlternatingRowColor=true;
If you have a scenario which involves localization and you have columns with empty strings, these empty string values are serialized in the localization files.
To reproduce: GridViewSpreadExport spreadExporter = new GridViewSpreadExport(this.radGridView1); spreadExporter.RunExport(@"C:\exportedFile.xlsx"); Workaround: GridViewSpreadExport spreadExporter = new GridViewSpreadExport(this.radGridView1); spreadExporter.RunExport(@"C:\exportedFile.xlsx", new SpreadExportRenderer()); Alternatively you can set the Copy Local property of the TelerikExport assembly to true.
The new rows is added in ChildViewExpanded event
Use the following help article to set up the hierarchy >> http://www.telerik.com/help/winforms/gridview-hierarchical-grid-self-referencing-hierarchy.html Please refer to the attached gif files illustrating the behavior in Q1 SP and Q2.
Two sequential rows can have the same background in the case of enabled alternating row color functionality. This is an issue when self-reference hierarchy is used and the two rows are not at the same hierarchy level.
You cannot select cells from first and last column when the RadGridView is in right to left mode.
The following HTMLViewDefinition has a wrong layout when run: HtmlViewDefinition view = new HtmlViewDefinition(); view.RowTemplate.Rows.Add(new RowDefinition()); view.RowTemplate.Rows.Add(new RowDefinition()); view.RowTemplate.Rows.Add(new RowDefinition()); view.RowTemplate.Rows[0].Cells.Add(new CellDefinition("column0", 0, 1, 1)); view.RowTemplate.Rows[0].Cells.Add(new CellDefinition("column1", 0, 1, 3)); view.RowTemplate.Rows[0].Cells.Add(new CellDefinition("column2", 0, 1, 1)); view.RowTemplate.Rows[1].Cells.Add(new CellDefinition("column3", 0, 1, 2)); view.RowTemplate.Rows[1].Cells.Add(new CellDefinition("column4", 0, 1, 1)); view.RowTemplate.Rows[2].Cells.Add(new CellDefinition("column5", 0, 1, 1)); The layout puts column5 over column1. A possible workaround would be to refresh the rows in the grid's SizeChanged event handler: private void RadGridView1_SizeChanged(object sender, EventArgs e) { radGridView1.TableElement.ViewElement.UpdateRows(true); }
The AutoSizeColumnsMode.Fill cause glitches when HtmlViewDefinition is used.
When RadTextBox is bound to a column (GridViewTextBoxColumn) in RadGridVIew it shows the current cell value. But once new row is added the value in the text box does not clear. Instead the last value stays. In case you add another row the value is being cleared.
Workaround: create a custom GridCheckBoxHeaderCellElement and override the Attach method public class MyGridCheckBoxHeaderCellElement : GridCheckBoxHeaderCellElement { public MyGridCheckBoxHeaderCellElement(GridViewColumn column, GridRowElement row) : base(column, row) { } protected override Type ThemeEffectiveType { get { return typeof(GridHeaderCellElement); } } public override void Attach(GridViewColumn data, object context) { if (((GridViewCheckBoxColumn)data).EnableHeaderCheckBox) { base.Attach(data, context); } else { this.CheckBox.Visibility = Telerik.WinControls.ElementVisibility.Collapsed; } } } public Form1() { InitializeComponent(); this.radGridView1.CreateCell += radGridView1_CreateCell; } private void radGridView1_CreateCell(object sender, Telerik.WinControls.UI.GridViewCreateCellEventArgs e) { if (e.CellType == typeof(GridCheckBoxHeaderCellElement)) { e.CellElement = new MyGridCheckBoxHeaderCellElement(e.Column, e.Row) } }
Stack Overflow Exception in the CellValueNeeded Event after sorting when RowIndex, ColumnIndex arguments is used