Telerik Forums
UI for WinForms Forum
1 answer
7 views

Good morning,

Is there a way to enable natural sorting (two-way sorting) also in Winforms Virtualgrid? I saw that it is possible in ASP.NET AJAX libray (https://www.telerik.com/products/aspnet-ajax/documentation/controls/grid/functionality/sorting/controlling-sort-modes)

Thank you very much.

 

Emanuele

 

Dinko | Tech Support Engineer
Telerik team
 answered on 28 Aug 2025
2 answers
10 views

Hi sir 

 

      I install the version "2017_2_613_40" but in toolbox tab control not present how we enable that tab control

 

M Kumar
Top achievements
Rank 1
Iron
Iron
Veteran
 answered on 28 Aug 2025
2 answers
8 views

WinForms TreeView displays icons and text. How to obtain the Rectangle of the icon area, or how to implement the click event of the icon. Through the method in https://www.telerik.com/forums/hovering-over-node-image: 
TreeNodeImageElement imageElement = radTreeView1.ElementTree.GetElementAtPoint(e.Location) as TreeNodeImageElement;
The obtained structure is null, and the version is 2025.

thaks

yw
Top achievements
Rank 2
Iron
 answered on 25 Aug 2025
1 answer
8 views

 When the RadCheckBox or RadToggleButton control is clicked quickly, an exception will be thrown: System.NullReferenceException: "Object reference not set to an instance of an object."

   private void radCheckBox1_ToggleStateChanged(object sender, Telerik.WinControls.UI.StateChangedEventArgs args)
   {
   }

   private void radToggleButton1_ToggleStateChanged(object sender, Telerik.WinControls.UI.StateChangedEventArgs args)
   {
   }
Nadya | Tech Support Engineer
Telerik team
 answered on 25 Aug 2025
3 answers
22 views

Hi there,


I have written a component that resides within a column of a RadGridView. Based on the provided source code, I need the cell events like CellBeginEdit, CellEndEdit, and CellValueChanged in the RadGridView to be handled intelligently and reliably for columns of the AdvancedRadMultiColumnComboPlus type.

In other words, how can I get events like CellBeginEdit, CellEndEdit, and CellValueChanged to fire for columns of the AdvancedRadMultiColumnComboPlus type?

Please guide me.

Thank you.

Abbas
Top achievements
Rank 1
Iron
 answered on 22 Aug 2025
0 answers
12 views

I'm experiencing a bizarre issue with RadGridView.

I had a grid on a form that displays the results of a List collection. Pretty simple, but there was one column that refused to display the data. The column itself appeared but the data didn't display. I moved everything to another form and it worked fine.

Now I added another column to the grid and now that won't display data. The data is in the list collection, the FieldName property is correct  (I even copied it from the POCO to make sure.). Then  I added another column to the grid and it won't display at all at runtime even though it shows in the designer. Here is the code from the designer:

Any ideas on this one. I've never had a grid act like this before. Unfortunately I can't send you demo code s if I copy it to another form it will work.

Carl

           gvMemos.MasterTemplate.AllowAddNewRow = false;
           gvMemos.MasterTemplate.AllowColumnHeaderContextMenu = false;
           gvMemos.MasterTemplate.AllowDeleteRow = false;
           gvMemos.MasterTemplate.AllowEditRow = false;
           gvMemos.MasterTemplate.AllowRowHeaderContextMenu = false;
           gvMemos.MasterTemplate.AllowRowResize = false;
           gvMemos.MasterTemplate.AllowSearchRow = true;
           gvMemos.MasterTemplate.AutoSizeColumnsMode = Telerik.WinControls.UI.GridViewAutoSizeColumnsMode.Fill;
           gridViewTextBoxColumn1.EnableExpressionEditor = false;
           gridViewTextBoxColumn1.FieldName = "MemoOptionsDescription";
           gridViewTextBoxColumn1.HeaderText = "column1";
           gridViewTextBoxColumn1.Name = "column1";
           gridViewTextBoxColumn1.ReadOnly = true;
           gridViewTextBoxColumn1.Width = 284;
           gridViewTextBoxColumn2.DataType = typeof(DateTime);
           gridViewTextBoxColumn2.EnableExpressionEditor = false;
           gridViewTextBoxColumn2.FieldName = "DateTimeStamp";
           gridViewTextBoxColumn2.HeaderText = "Date/Time";
           gridViewTextBoxColumn2.Name = "Date";
           gridViewTextBoxColumn2.Width = 284;
           gridViewTextBoxColumn3.EnableExpressionEditor = false;
           gridViewTextBoxColumn3.FieldName = "MemoText2";
           gridViewTextBoxColumn3.HeaderText = "Memo Description";
           gridViewTextBoxColumn3.Name = "Memo Description";
           gridViewTextBoxColumn3.ReadOnly = true;
           gridViewTextBoxColumn3.Width = 284;
           gridViewTextBoxColumn4.EnableExpressionEditor = false;
           gridViewTextBoxColumn4.FieldName = "AssignedTo";
           gridViewTextBoxColumn4.HeaderText = "Assigned To";
           gridViewTextBoxColumn4.Name = "Assigned To";
           gridViewTextBoxColumn4.ReadOnly = true;
           gridViewTextBoxColumn4.Width = 284;
           gridViewTextBoxColumn5.FieldName = "MemoTypeDescription";
           gridViewTextBoxColumn5.HeaderText = "Type";
           gridViewTextBoxColumn5.Name = "Memo Type";
           gridViewTextBoxColumn5.Width = 284;
           gridViewTextBoxColumn6.EnableExpressionEditor = false;
           gridViewTextBoxColumn6.FieldName = "MemoOptionsDescription";
           gridViewTextBoxColumn6.HeaderText = "Options";
           gridViewTextBoxColumn6.Name = "Options";
           gridViewTextBoxColumn6.ReadOnly = true;
           gridViewTextBoxColumn6.Width = 284;
           gridViewTextBoxColumn7.EnableExpressionEditor = false;
           gridViewTextBoxColumn7.FieldName = "OperID";
           gridViewTextBoxColumn7.HeaderText = "User";
           gridViewTextBoxColumn7.Name = "User";
           gridViewTextBoxColumn7.ReadOnly = true;
           gridViewTextBoxColumn7.Width = 282;
           gvMemos.MasterTemplate.Columns.AddRange(new Telerik.WinControls.UI.GridViewDataColumn[] { gridViewTextBoxColumn1, gridViewTextBoxColumn2, gridViewTextBoxColumn3, gridViewTextBoxColumn4, gridViewTextBoxColumn5, gridViewTextBoxColumn6, gridViewTextBoxColumn7 });
           gvMemos.MasterTemplate.EnableAlternatingRowColor = true;
           gvMemos.MasterTemplate.EnablePaging = true;
           gvMemos.MasterTemplate.ShowGroupedColumns = true;
           gvMemos.MasterTemplate.ViewDefinition = tableViewDefinition1;
           gvMemos.Name = "gvMemos";
           gvMemos.Size = new System.Drawing.Size(1767, 229);
           gvMemos.TabIndex = 4;
           gvMemos.CellFormatting += OnCellFormattingMemos;
           gvMemos.ViewCellFormatting += OnViewCellFormattingMemos;
           gvMemos.ContextMenuOpening += OnContextMenuOpeningMemos;
           gvMemos.DoubleClick += gvMemos_DoubleClick;

 

Carl
Top achievements
Rank 1
Iron
Iron
Iron
 updated question on 21 Aug 2025
1 answer
15 views

Hello!
I had a chance to notice some strange behavior with setting CurrentColumn.

For instance I would like to change focused column, in case someone tries to focus on the wrong column. 

Let's review 2 cases:
Case #1 (without an issue):

1) User clicks on any cell (different from the current, for instance user cicked on column 2).
2) Grid tries to set Cell from column 2 as current.
3) RadGridView.CurrentCellChanged event is being triggered.
4) Method subscribed on RadGridView.CurrentCellChanged event sets CurrentColumn (for instance it sets 3 if Current one is not 3).
5) Grid sets Cell from third column as current.
6) Nothing is looped.

Case #2 (with issue):
1) Some Method from code sets CurrentColumn as 2 (different from the current one)
2) Grid tries to set Cell from column 2 as current
3) RadGridView.CurrentCellChanged event is being triggered.
4) Method subscribed on RadGridView.CurrentCellChanged event sets CurrentColumn (for instance it sets 3 if Current one is not 3).
5) Grid sets Cell from third column as current.
6) Loop has formed
6.1) Every RadGridView.CurrentCellChanged call it changes the input params:
call 1:
e.CurrentCell = (cell from column 2)
e.NewCell = (cell from column 3)
call 2:
e.CurrentCell = (cell from column 3)
e.NewCell = (cell from column 2)
call 3:
e.CurrentCell = (cell from column 2)
e.NewCell = (cell from column 3)
...

Code:

public partial class Form1 : Form
{
    private BindingSource bindingSource;
    public Form1()
    {
        InitializeComponent();
        InitializeGrid();

        radGridView1.CurrentCellChanged += RadGridView1_CurrentCellChanged;
    }

    private void RadGridView1_CurrentCellChanged(object sender, CurrentCellChangedEventArgs e)
    {
        if (radGridView1.CurrentColumn != radGridView1.Columns[2])
            radGridView1.CurrentColumn = radGridView1.Columns[2];
    }

    private void InitializeGrid()
    {
        bindingSource = new BindingSource();

        DataTable table = new DataTable();
        table.Columns.Add("Id", typeof(int));
        table.Columns.Add("Name", typeof(string));
        table.Columns.Add("Age", typeof(int));

        table.Rows.Add(1, "Alice", 30);
        table.Rows.Add(2, "Bob", 25);
        bindingSource.DataSource = table;
        radGridView1.DataSource = bindingSource;
    }

    private void button1_Click(object sender, EventArgs e)
    {
        radGridView1.CurrentColumn = radGridView1.Columns[1];
    }
}
Telerik version: 2025.2.520.48

Is the any restriction of using CurrentCellChanged event?
Is there any other way we can provide such functionality?

Thank You!
Nadya | Tech Support Engineer
Telerik team
 answered on 19 Aug 2025
1 answer
9 views

Hello,
I want to use the following commands:
F9 and Shift+F9.
F9: OK.
Shift+F9: no response?
Do you have a solution?

Here is my code.

METHOD PRIVATE VOID GridFamille_KeyDown( INPUT sender AS System.Object, INPUT e AS System.Windows.Forms.KeyEventArgs ):

IF e:Shift THEN DO:
            CASE e:KEYCODE :
                WHEN System.Windows.Forms.Keys:F9 THEN DO:
                             MESSAGE 'SHITF + F9' e:KEYCODE:ToString()    VIEW-AS ALERT-BOX.
                END.                   
            END CASE.
        END. 
        ELSE DO: 
            CASE e:KEYCODE:   

                WHEN System.Windows.Forms.Keys:F9 THEN DO:

                      MESSAGE 'F9' e:KEYCODE:ToString()    VIEW-AS ALERT-BOX.

                END.                   
            END CASE.
        END.                                 
Nadya | Tech Support Engineer
Telerik team
 answered on 18 Aug 2025
2 answers
17 views

Hello,

I want to add drawstring (watermark) to datagridview for some help information (for example: "double click to add new item" etc)

Can you help me?

 

 

Radek
Top achievements
Rank 2
Iron
Iron
Iron
 updated answer on 11 Aug 2025
2 answers
11 views

Hi,

in datagridview I have set AllowRowReorder to True and works well.

But I want to copy row (not move) when I hold Ctrl key, it is possible?

Radek
Top achievements
Rank 2
Iron
Iron
Iron
 answered on 11 Aug 2025
Narrow your results
Selected tags
Tags
GridView
General Discussions
Scheduler and Reminder
Treeview
Dock
RibbonBar
Themes and Visual Style Builder
ChartView
Calendar, DateTimePicker, TimePicker and Clock
DropDownList
Buttons, RadioButton, CheckBox, etc
ListView
ComboBox and ListBox (obsolete as of Q2 2010)
Chart (obsolete as of Q1 2013)
Form
PageView
MultiColumn ComboBox
TextBox
RichTextEditor
PropertyGrid
Menu
RichTextBox (obsolete as of Q3 2014 SP1)
Panelbar (obsolete as of Q2 2010)
PivotGrid and PivotFieldList
Tabstrip (obsolete as of Q2 2010)
MaskedEditBox
CommandBar
PdfViewer and PdfViewerNavigator
ListControl
Carousel
GanttView
Diagram, DiagramRibbonBar, DiagramToolBox
Panorama
New Product Suggestions
Toolstrip (obsolete as of Q3 2010)
VirtualGrid
AutoCompleteBox
Label
Spreadsheet
ContextMenu
Panel
Visual Studio Extensions
TitleBar
Documentation
SplitContainer
Map
DesktopAlert
CheckedDropDownList
ProgressBar
TrackBar
MessageBox
Rotator
SpinEditor
CheckedListBox
StatusStrip
LayoutControl
SyntaxEditor
Wizard
ShapedForm
TextBoxControl
Conversational UI, Chat
DateTimePicker
CollapsiblePanel
TabbedForm
CAB Enabling Kit
GroupBox
WaitingBar
DataEntry
ScrollablePanel
ScrollBar
ImageEditor
Tools - VSB, Control Spy, Shape Editor
BrowseEditor
DataFilter
ColorDialog
FileDialogs
Gauges (RadialGauge, LinearGauge, BulletGraph)
ApplicationMenu
RangeSelector
CardView
WebCam
Styling
Barcode
BindingNavigator
PopupEditor
RibbonForm
TaskBoard
Callout
ColorBox
PictureBox
FilterView
NavigationView
Accessibility
VirtualKeyboard
DataLayout
Licensing
ToastNotificationManager
ValidationProvider
CalculatorDropDown
Localization
TimePicker
ButtonTextBox
FontDropDownList
BarcodeView
BreadCrumb
Security
LocalizationProvider
Dictionary
Overlay
Flyout
Separator
SparkLine
TreeMap
StepProgressBar
SplashScreen
ToolbarForm
NotifyIcon
DateOnlyPicker
Rating
TimeSpanPicker
Calculator
OfficeNavigationBar
TaskbarButton
HeatMap
SlideView
PipsPager
AIPrompt
TaskDialog
TimeOnlyPicker
AI Coding Assistant
+? more
Top users last month
Jay
Top achievements
Rank 3
Iron
Iron
Iron
Benjamin
Top achievements
Rank 3
Bronze
Iron
Veteran
Radek
Top achievements
Rank 2
Iron
Iron
Iron
Bohdan
Top achievements
Rank 2
Iron
Iron
Richard
Top achievements
Rank 4
Bronze
Bronze
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Jay
Top achievements
Rank 3
Iron
Iron
Iron
Benjamin
Top achievements
Rank 3
Bronze
Iron
Veteran
Radek
Top achievements
Rank 2
Iron
Iron
Iron
Bohdan
Top achievements
Rank 2
Iron
Iron
Richard
Top achievements
Rank 4
Bronze
Bronze
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?