We’re
having a serious performance issues with RadGridView in Telerik v.2017.1.221.40
for Winforms. It is very easy to reproduce.
The code
below opens up a Form with the only control, RadGridView and then adds 5,000
rows to it. The control has a single column containing Boolean values. Since
the EnableHeaderCheckBox property of the column is set to
true, it is possible to manually tick the check box in the column header.
With v.2017.1.221.40,
after the checkbox ticked, it takes 10 seconds to the program to actually tick the boxes in all 5,000 rows and then 7 seconds to untick them. During this time the control (and the
form too of course) remains unresponsive.
In another code example, which is virtually identical to the one below (it’s part of a large application), it takes more than 30 seconds to perform the operation.
However with v.2015.1.331.40, this operation is executed instantaneously.
Environment: i7-4770 CPU @ 3.40Gz, 24GB RAM, Windows 10 Pro, .Net 4.6.
public partial class Form1 : Form
{
private Telerik.WinControls.UI.RadGridView rgvSites;
private readonly BindingList<Site1> siteList = new BindingList<Site1>();
public Form1()
{
InitializeComponent();
for (int i = 1; i <= 5000; i++)
{
this.siteList.Add(new Site1() { Id = i, Number = i, Name = "site" + i });
}
this.rgvSites.DataSource = this.siteList;
}
private void InitializeComponent()
{
Telerik.WinControls.UI.GridViewCheckBoxColumn gridViewCheckBoxColumn1 = new Telerik.WinControls.UI.GridViewCheckBoxColumn();
Telerik.WinControls.UI.TableViewDefinition tableViewDefinition1 = new Telerik.WinControls.UI.TableViewDefinition();
this.rgvSites = new Telerik.WinControls.UI.RadGridView();
((System.ComponentModel.ISupportInitialize)(this.rgvSites)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.rgvSites.MasterTemplate)).BeginInit();
this.SuspendLayout();
//
// rgvSites
//
this.rgvSites.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.rgvSites.CausesValidation = false;
this.rgvSites.EnableAnalytics = false;
this.rgvSites.EnableGestures = false;
this.rgvSites.EnableHotTracking = false;
this.rgvSites.EnableTheming = false;
this.rgvSites.Location = new System.Drawing.Point(31, 31);
//
//
//
this.rgvSites.MasterTemplate.AllowAddNewRow = false;
this.rgvSites.MasterTemplate.AllowCellContextMenu = false;
this.rgvSites.MasterTemplate.AllowColumnChooser = false;
this.rgvSites.MasterTemplate.AllowColumnHeaderContextMenu = false;
this.rgvSites.MasterTemplate.AllowColumnReorder = false;
this.rgvSites.MasterTemplate.AllowColumnResize = false;
this.rgvSites.MasterTemplate.AllowDeleteRow = false;
this.rgvSites.MasterTemplate.AllowDragToGroup = false;
this.rgvSites.MasterTemplate.AllowRowResize = false;
this.rgvSites.MasterTemplate.AutoGenerateColumns = false;
gridViewCheckBoxColumn1.AllowFiltering = false;
gridViewCheckBoxColumn1.AllowGroup = false;
gridViewCheckBoxColumn1.AllowHide = false;
gridViewCheckBoxColumn1.AllowReorder = false;
gridViewCheckBoxColumn1.AllowResize = false;
gridViewCheckBoxColumn1.AllowSort = false;
gridViewCheckBoxColumn1.EnableHeaderCheckBox = true;
gridViewCheckBoxColumn1.FieldName = "Selected";
gridViewCheckBoxColumn1.HeaderText = "Selected";
gridViewCheckBoxColumn1.Name = "Selected";
gridViewCheckBoxColumn1.VisibleInColumnChooser = false;
gridViewCheckBoxColumn1.Width = 23;
this.rgvSites.MasterTemplate.Columns.AddRange(new Telerik.WinControls.UI.GridViewDataColumn[] {
gridViewCheckBoxColumn1});
this.rgvSites.MasterTemplate.EnableGrouping = false;
this.rgvSites.MasterTemplate.EnableSorting = false;
this.rgvSites.MasterTemplate.ShowRowHeaderColumn = false;
this.rgvSites.MasterTemplate.VerticalScrollState = Telerik.WinControls.UI.ScrollState.AlwaysShow;
this.rgvSites.MasterTemplate.ViewDefinition = tableViewDefinition1;
this.rgvSites.Name = "rgvSites";
this.rgvSites.ShowCellErrors = false;
this.rgvSites.ShowItemToolTips = false;
this.rgvSites.ShowRowErrors = false;
this.rgvSites.Size = new System.Drawing.Size(240, 218);
this.rgvSites.TabIndex = 0;
this.rgvSites.Text = "Sites";
//
// Form1
//
this.ClientSize = new System.Drawing.Size(284, 261);
this.Controls.Add(this.rgvSites);
this.Name = "Form1";
this.Text = "Form1";
((System.ComponentModel.ISupportInitialize)(this.rgvSites.MasterTemplate)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.rgvSites)).EndInit();
this.ResumeLayout(false);
}
}
class Site1
{
public long Id { get; set; }
/// <summary>
/// Site number.
/// </summary>
public long Number { get; set; }
/// <summary>
/// Site name.
/// </summary>
public string Name { get; set; }
public bool Selected
{
get;
set;
}
}


I have RadForm-derived class that I'm adding as RadDock document windows. How do I make them stay the same size as the container? Please see attachment.
The code I'm using is something like this:
var view = new MyView(rule){ Dock = DockStyle.Fill, TopLevel = false, FormBorderStyle = FormBorderStyle.None, MdiParent = this, Text = "blah",};view.Show();var wnd = new DocumentWindow {Text = "blah"};wnd.Controls.Add(view);radDock1.AddDocument(wnd);
I'm using an older version of Telerik at the moment. The version of RadDock.dll is 2017.3.912.40 and Runtime version is v4.0.30319.


I was under the assumption that any UI element you wanted to update from the Backgroundworker had to be in the ProgessChanged event. However, I have noticed, only by accident, that I have been able to update the RadLabelElement's Text property w/ in the BackGroundWorker DoWork event. Is this by design? I have not been able to find any documentation on this related to the RadLabelElement.
TIA


Hello,
is it possible to hide the filter symbol in a specific column header while excel-like filtering remains enabled?
I have to filter a specific column via some radio buttons only.
This works for me:
Private Sub rbAktiv_CheckedChanged(sender As Object, e As EventArgs) Handles rbAktivAuftraege.CheckedChanged Dim filter As New FilterDescriptor() Dim filtervalue As String = String.Empty filter.PropertyName = "oa_status" filter.[Operator] = FilterOperator.Contains filter.IsFilterEditor = True Select Case True Case sender Is rbAktivAuftraege Me.RGV_auftraege.FilterDescriptors.Clear() filtervalue = CStr("aktiv") filter.Value = filtervalue Me.RGV_auftraege.FilterDescriptors.Add(filter)End SelectBest Regards,
V. Adler
I want to apply formatting to a cell in a summary row (or the entire row in some cases) but I have several summary rows in my grid. How can I tell in the viewrowformatting or other event which summary row is active?
Hi,
I use a spreadsheet to display a xlsm file which contains buttons and data validation from a list.
The attached file "Excel" shows how this file looks in Excel.
The attached file "SpreadSheet" shows how this file looks in the spreadsheet :
- buttons are not displayed
- the data validation in the cell works correctly according to the list but drop down arrow is not shown in the cell even if the options "In-cell dropdown" is checked
Thanks for your help
Regards
hi . i'm using vs 2015 on win 10 . raddatetime picker shamsi calendar work on win 10 but not work on other windos(7,8,8.1)
on windows 8.1 it convert to miladi
my code :
Me.DateTimePicker1.Culture = New System.Globalization.CultureInfo("Fa-IR")
