RadGridView remains in edit mode if the focus has been taken from RadToolStrip's item (for example: ButtonElement is clicked) It is an issue in the obsolete RadToolStrip. Works as expected with RadCommandBar.
When, the end user, chose "Equals" for filter in Boolean column, the unchecked check box element is shown, but the records remains unfiltered. It should shows only records with value=false (unchecked).
RadGridView's SelectAll method does not trigger SelectionChanged event.
There is a validation condition for a given cell, implemented through the CellValidating event. The end user enters a wrong value and hits tab key. Validation occurs and the value has prevented from confirming. However, if after that the user presses escape key, the old value is not returned as expected.
The exception is thrown if the CellBeginEdit event had been canceled and the form which contains the RadGridView has been closed
When using Entity Framework as data source for RadGridView when deleting child rows the IndexOutOfRange exception is thrown.
RowValidating does not fire when moving from child row to parent row.
Steps to reproduce - by using the code below follow these steps 1) Enter some text in the first cell 2) In the first ComboBox cell ("city") type the beginning of the word, for example "L", then the dataSource gets filtered and contains only items begins with "L". 3) Move down to the second Item by the down arrow key and choose it by pressing tab key 4) Now the next cell becomes focused, type in capital "M" Result: Exception: IndexOutOfRangeException - "Index was outside the bounds of the array." DataTable dt = new DataTable(); dt.Columns.Add("name"); dt.Columns.Add("city", typeof(int)); dt.Columns.Add("role", typeof(int)); radGridView1.DataSource = dt;. radGridView1.Columns.RemoveAt(1); radGridView1.Columns.RemoveAt(1); DataTable dtCities = new DataTable(); dtCities.Columns.Add("id", typeof(int)); dtCities.Columns.Add("name"); dtCities.Rows.Add(1, "New York"); dtCities.Rows.Add(2, "London"); dtCities.Rows.Add(2, "Lisabon"); GridViewComboBoxColumn cityCol = new GridViewComboBoxColumn("city"); cityCol.DataSource = dtCities; cityCol.ValueMember = "id"; cityCol.DisplayMember = "name"; cityCol.AutoCompleteMode = AutoCompleteMode.SuggestAppend; cityCol.DropDownStyle = Telerik.WinControls.RadDropDownStyle.DropDown; radGridView1.Columns.Add(cityCol); DataTable dtRoles = new DataTable(); dtRoles.Columns.Add("id", typeof(int)); dtRoles.Columns.Add("name"); dtRoles.Rows.Add(1, "Sales Man"); dtRoles.Rows.Add(2, "Manager"); GridViewComboBoxColumn roleCol = new GridViewComboBoxColumn("role"); roleCol.DataSource = dtRoles; roleCol.ValueMember = "id"; roleCol.DisplayMember = "name"; roleCol.AutoCompleteMode = AutoCompleteMode.SuggestAppend; roleCol.DropDownStyle = Telerik.WinControls.RadDropDownStyle.DropDown; radGridView1.Columns.Add(roleCol); WORKAROUND: Replace the editor with a new one to avoid reusage void radGridView1_EditorRequired(object sender, EditorRequiredEventArgs e) { if (e.EditorType == typeof(RadDropDownListEditor)) { e.Editor = new RadDropDownListEditor(); } }
We have a RadGridView, which uses a custom object for data source and that object override Equals method from INotifyPropertyChanged interface. If Equals return true for records that actually aren't equal, than the RadGridView takes(displays) them as equal (with one and the same values), despite the fact that in underling data source they are still different.
If you want to cancel CurrentRowChanging (e.Cancel=true), when you click on next row's check box column, it throws the event twice and the next rows' check box has been improperly checked.
When there is as self-referencing hierarchy, column's BestFit method does not work properly.
Create a GridViewComboBoxColumn. When you select the field either by tab or single-click, it is no longer possible to select a value by pressing an alpha-numeric key on keyboard. You must first press the down-arrow key, or select a value with the mouse. Pressing the down-arrow shouldn't be required.
Expand All method does not work as expected if there is grouping applied.
STEPS TO REPRODUCE: 1) Create an excel file with sample string values (for example 3x3): | Value 1 | Value 2 | Value 3 | | Value 4 | Value 5 | Value 6 | | Value 7 | Value 8 | Value 9 | 2) Validate as double: private ErrorProvider errorProvider = new ErrorProvider(); void gridView_CellValidated(object sender, CellValidatedEventArgs e) { if (e.Value == null) { return; } var cell = e.Row.Cells[e.ColumnIndex]; double value = 0; if (double.TryParse(e.Value.ToString(), out value)) { cell.ErrorText = string.Empty; errorProvider.SetError(gridView, string.Empty); } else { cell.ErrorText = "Wrong input format"; errorProvider.SetError(gridView, "Wrong input format"); } } 3) Copy the cells from excel and paste them in the grid Expected result: Validate all cells Actual result: Only the current cell is being validated and the CellValidated and CellValidating events are not fired for the other cells WORKAROUND: public class CustomGridBehavior : BaseGridBehavior { Form1 form; public CustomGridBehavior(Form1 form) { this.form = form; } public override bool ProcessKey(KeyEventArgs keys) { if (keys.KeyCode == Keys.V && keys.Control) { GridControl.MasterTemplate.Paste(); foreach (GridViewRowInfo row in GridControl.ChildRows) { form.ValidateCell(row.Cells[GridControl.CurrentColumn.Index]); } return true; } return base.ProcessKey(keys); } } void gridView_ContextMenuOpening(object sender, ContextMenuOpeningEventArgs e) { foreach (RadMenuItem item in e.ContextMenu.Items) { if (item.Text == "Paste") { e.ContextMenu.Items.Remove(item); break; } } RadMenuItem myPasteItem = new RadMenuItem("Paste"); myPasteItem.Click += new EventHandler(myPasteItem_Click); e.ContextMenu.Items.Add(myPasteItem); } void myPasteItem_Click(object sender, EventArgs e) { gridView.MasterTemplate.Paste(); foreach (GridViewRowInfo row in gridView.ChildRows) { ValidateCell(row.Cells[gridView.CurrentColumn.Index]); } }
The HeaderText of the RadGridView columns is not properly serialized in the resource file for the corresponding language.
The issue appears when a top summary row is added and the application runs on a 32-bit machine.
The issue appears when the RadGridView control has a Multiline GridViewTextBoxColumn and applied AutoSizeRows functionality.
The mouse drag selection does not work when the SelectionMode of the control is CellSelect and RowSpacing is defined.
The permanent editor of the cell handles the MouseClick events.
The issue appears in the following scenario: 1. The RadGridView AutoSizeRows mode is turned on. 2. The user starts to edit a Multiline GridViewTextBoxColumn.