When a user groups the grid by a certain column and then attempts to drag the column back to the header, column reorder is possible, even though the AllowColumnReorder is false.
The following strings on the print settings dialog of RadGridView cannot be localized: "Page fit mode", "Print:", "Alternating row color", "Summary cells"
When RightToLeft is enabled in RadGridView and you try to print it, the layout of the pages is messed up.
"IsContainedIn" and "IsNotContainedIn" operators currently not work properly with composite values like: "1, 2, 3"
You cannot select cells from first and last column when the RadGridView is in right to left mode.
When a RadGridView instance is initialized in the Form's constructor, the grid is not assigned a binding context. Note: This is a desired behavior.
To reproduce: public Form1() { InitializeComponent(); Random r = new Random(); DataTable table = new DataTable(); 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)); } this.radGridView1.DataSource = table; radGridView1.Columns[0].FormatString = "{0:n3}"; } MemoryStream ms = new MemoryStream(); private void radButton1_Click(object sender, EventArgs e) { // ms.SetLength(0); reset memory stream to save new layout radGridView1.SaveLayout(ms); } private void radButton2_Click(object sender, EventArgs e) { radGridView1.LoadLayout(ms); } }
To reprouduce, have a grid with multiple rows selected using the translucent rectangle and use the following code on a button click: using System; using System.Data; using System.Windows.Forms; using Telerik.WinControls.UI; namespace Lab.Grid { public partial class GridSelectionException : MainForm { private RadGridView gridView = new RadGridView(); public GridSelectionException() { InitializeComponent(); gridView.Dock = DockStyle.Fill; gridView.Parent = this; gridView.BringToFront(); Random r = new Random(); DataTable table = new DataTable(); table.Columns.Add("ID"); table.Columns.Add("Name"); table.Columns.Add("Bool"); for (int i = 0; i < 10; i++) { table.Rows.Add(i, "Row" + i, (r.Next(10) > 5) ? true : false); } gridView.DataSource = table; gridView.MultiSelect = true; } protected override void OnButton1Click() { //your code for deleting rows if (this.gridView.SelectedRows.Count > 0) { System.Windows.Forms.Cursor.Current = Cursors.WaitCursor; GridViewDataRowInfo[] rows = new GridViewDataRowInfo[this.gridView.SelectedRows.Count]; this.gridView.SelectedRows.CopyTo(rows, 0); this.gridView.TableElement.BeginUpdate(); for (int i = 0; i <= rows.Length - 1; i++) { //rows[i].IsSelected = false; rows[i].Delete(); } this.gridView.TableElement.EndUpdate(); System.Windows.Forms.Cursor.Current = Cursors.Arrow; } } } }
Currently when clicking on the expander cell RadGridView scrolls to the currently selected column which in some cases causes unnecessary scrolling Workaround: public class CustomGridControl : RadGridView { public override string ThemeClassName { get { return typeof(RadGridView).FullName; } set { } } protected override void OnMouseDown(MouseEventArgs e) { RadElement element = this.ElementTree.GetElementAtPoint(e.Location); GridGroupExpanderCellElement expanderCell = element as GridGroupExpanderCellElement; if (expanderCell == null) { expanderCell = element.FindAncestor<GridGroupExpanderCellElement>(); } if (expanderCell != null) { this.TableElement.BeginUpdate(); expanderCell.RowInfo.IsExpanded = !expanderCell.RowInfo.IsExpanded; this.TableElement.HScrollBar.Value = 0; this.TableElement.EndUpdate(); return; } base.OnMouseDown(e); } }
debug attached sample application steps: set number of rows to 500 change to 2nd page change to 1st page set number of rows to 0 change to 2nd page
FIX. RadGridView - the PropertyName from the arguments of the RowsChanged event is null, while it should display the changed field name
FIX. RadGridView - CompositeFilterDescriptors does not work properly
FIX. RadGridView- exception when filtering date time column which contains null values
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.
FIX. RadGridView - exception when copying cells from different groups
When the DataType of the column is not a floating point number, decimals should not be displayed. This should affect both the excel like filtering and the regular filtering
Steps to reproduce: 1. Add a RadGridView to a form. 2. Add a code that would load data in the RadGridView from an IDataReader: radGridView1.MasterTemplate.LoadFrom(iReader); 3. Set EnableAlternatingRowColor to true and set some AlternatingRowColor 4. Run the project and you will see that the alternating row color is not applied.
Workaround: set the Position of the current item of the BindingSource in the CurrentRowChanged event of RadGridView: void rgvInvoices_CurrentRowChanged(object sender, CurrentRowChangedEventArgs e) { int index = bsInvoices.IndexOf(e.CurrentRow.DataBoundItem) ; bsInvoices.Position = index; }
Save and load layout to work in all view definitions.
Currently none of the exporters can be canceled.