Completed
Last Updated: 02 Feb 2023 09:34 by ADMIN
Release R1 2023
Created by: Wenyu
Comments: 1
Category: UI for WinForms
Type: Bug Report
0

After installing R3 2022, the QuickStart example can't be run:

 

 
Completed
Last Updated: 01 Nov 2022 13:07 by ADMIN
Release R3 2022 SP2

The method GridViewTemplate.SetError creates in most situations an GridViewDataErrorEventArgs object twice.

Current code:

GridViewDataErrorEventArgs args = new GridViewDataErrorEventArgs(exception, 0, 0, GridViewDataErrorContexts.Commit);
if (e != null)
{
    args = new GridViewDataErrorEventArgs(exception, e.ColumnIndex, e.RowIndex, GridViewDataErrorContexts.Commit);
}

In assume in most cases e will not be null, so in must cases the first args will be removed. This has a small negative impact on memory and performace.

Suggestion:

GridViewDataErrorEventArgs args = e == null 
    ? new GridViewDataErrorEventArgs(exception, 0, 0, GridViewDataErrorContexts.Commit)
    : new GridViewDataErrorEventArgs(exception, e.ColumnIndex, e.RowIndex, GridViewDataErrorContexts.Commit);

Completed
Last Updated: 01 Nov 2022 13:06 by ADMIN
Release R3 2022 SP2
Created by: Martin
Comments: 1
Category: UI for WinForms
Type: Feature Request
0

This is about the following method:

        public void SetError(GridViewCellCancelEventArgs e, Exception exception)
        {
            GridViewDataErrorEventArgs args = new GridViewDataErrorEventArgs(exception, 0, 0, GridViewDataErrorContexts.Commit);
            if (e != null)
            {
                args = new GridViewDataErrorEventArgs(exception, e.ColumnIndex, e.RowIndex, GridViewDataErrorContexts.Commit);
            }
            this.EventDispatcher.RaiseEvent<GridViewDataErrorEventArgs>(EventDispatcher.DataError, this, args);

            if (args.ThrowException)
            {
                throw args.Exception;
            }

            if (args.Cancel)
            {
                //TODO: cancel row edit 
            }
        }

Right now, the method GridViewTemplate.SetError accepts a parameter of type GridViewCellCancelEventArgs, which in itself is weird, because event args should only be used inside events and OnXXX-methods. But since SetError fires an event, one could argue that this method is like a OnXXX-method.

But inside it becomes more weird, it translates GridViewCellCancelEventArgs into GridViewDataErrorEventArgs. And I must admit, the last DataError-args feel a lot more logical that CellCancel-args when firing setting an error. Furthermore, if I create an override of class GridViewCellCancelEventArgs to contain more data about an error, this information never reaches the event handlers.

So why this translation? Or better: Why this parameter?

My suggestion would be to make a new overload:


public void SetError(GridViewDataErrorEventArgs e)
{
    if (e == null)
        throw new ArgumentNullException(nameof(e));

        this.EventDispatcher.RaiseEvent<GridViewDataErrorEventArgs>(EventDispatcher.DataError, this, args);

        if (args.ThrowException)
                throw args.Exception;

        if (args.Cancel)
        {
                // TODO: I really do not know what telerik wanted to do here, so I live this up to Telerik.
        }
}
Furthermore you could consider markering the other SetError-methods as obsolete.
Unplanned
Last Updated: 16 Feb 2024 12:27 by Martin
Created by: Martin
Comments: 4
Category: UI for WinForms
Type: Feature Request
0

I would like to have a generic validation-mechanism, implemented in all controls. Hear me out:

A class ValidationInformation for containing all sort of validation information for a certain field, property, cell, etc. which has properties likes:

  • Type DataType
  • object MinValue
  • object MaxValue
  • int? MinLength
  • int? MaxLength
  • bool IsRequired
  • RegEx Mask
  • etc.

It also has a virtual method like bool Validate(object entity, object value, out string validationError).

A base class ValidationInformationProvider for retrieving validation information from various sources. It has some abstract methods for retrieval, storing/caching information per cell/field/property.

This base class has the following subclasses:

  • ValidationInformationProviderFromDataTable
  • ValidationInformationProviderFromAnnotations
  • ValidationInformationProviderFromXXX

Each provider is responsible for reading validation information from the source (DataTable, annotations on a property, etc.) and fill a ValidationInformation object.

Now the fun begins...

Each Telerik class, like RadGridView and/or subcomponents should get a method or event to retrieve ValidationInformation. When the event is not handled or the method returns null, the default behavior kicks in.

When ValidationInformation is provided, default behavior is overridden. Properties of editors van be set with values from ValidationInformation (like Minimum and Maximum of a GridViewDecimalColumnPlus or RadSpinEditorElement). At the end if editing the method ValidationInformation.Validate is called to validate the new value. The validation error can be used for popups, or tooltips, or an exception. 

This way a user does not have to think where to set which property of any Telerik control for any validation. This way a RadPropertyGrid and RadGridView can work the same way when it comes to data validation, regardless of all editors which work in the background. 

Unplanned
Last Updated: 29 Nov 2022 05:40 by ADMIN
Created by: Dev
Comments: 2
Category: UI for WinForms
Type: Feature Request
0

Currently, RadGridView offers GridViewImageColumn. However, it would be good to offer support for SVG images out of the box.  

One possible approach is to introduce a new property for the GridViewImageColumn - ImageDrawType = ImageDrawType.Svg that controls what kind of images this column will store.

Second approach is to introduce a new GridViewSvgImageColumn.

Declined
Last Updated: 16 Feb 2024 22:25 by ADMIN

I can't provide a project or even code snippets that would make sense out of context because the code base is too complex for an easy replication to be setup.

We are trying various things like calling Refresh, Update.

 

Hoping this is something you've encountered before and have some suggestions.

Completed
Last Updated: 24 Feb 2023 10:20 by ADMIN
Release R1 2023

The assembly is required for our RadMarkupEditor using the IE rendering engine. It allows you to specify HTML-like text formatting at design time in the Properties window of Visual studio:

 

Declined
Last Updated: 19 Jan 2023 16:23 by ADMIN
Created by: kultman
Comments: 1
Category: UI for WinForms
Type: Bug Report
0
The extension (which also keeps load times high) is prompting me about an expired subscription. We had a 2 seat and a 1 seat subscription. We now only need 2 seats and let the 1 seat expire. But I'm using the 2 seat active subscription. So stop bugging me about the expired 1 seat please :)
Declined
Last Updated: 09 Feb 2023 14:30 by ADMIN
Created by: Elliot
Comments: 1
Category: UI for WinForms
Type: Feature Request
0

Background: With many people having moved to working remotely, collaboration is a much larger part of any enterprise applications. As such, it would be highly beneficial to add real time collaboration capabilities to editor controls, more specifically the RadRichTextEditor control. It would work similarly to how MS Word works when more than one user is editing a document at the same time.

Scenario: Assume you have and WinForms application where there is a form that contains a RadRichTextEditor. The content for this control is populated from a centralized database. This content is editable by users of the application. Lets say that you have two users (User A and User B) editing this content at the same time. Currently, User A cannot see what User B is doing in real-time, and vice-versa. Each time one of the users saves the content, it will overwrite any changes made by the other user.

Desired outcome: If the users in the above scenario are using MS Word, each user would see that someone else is currently editing the document and the other user's changes would be displayed in real-time. This same outcome should be made more readily available with the Telerik editors, primarily the RadRichTextEditor, so that when two users are editing the same content, they would see each others' changes in real-time.

I know this is possible using SignalR and a bit of code, but I think it would be beneficial for the RadRichTextEditor to have better "out of the box" support for this feature.

I am aware of a web-based control that has this feature. Specifically, the CKEditor (https://ckeditor.com/) control has the features I am requesting. However, I am looking at WinForms as opposed to web.

Completed
Last Updated: 31 Jan 2024 11:39 by ADMIN
Release 2024 Q1 (2024.1.130)
Created by: Youssef
Comments: 0
Category: UI for WinForms
Type: Feature Request
0
Create a Compact Windows 11 theme that can be used in existing applications with non-touch themes. 
Completed
Last Updated: 27 Mar 2023 06:39 by ADMIN
Release R1 2023 SP1
When exporting with ExportToCSV, the generated text file contains a blank row after the last data row.
Unplanned
Last Updated: 15 Feb 2023 13:17 by ADMIN
Created by: Malcolm
Comments: 1
Category: UI for WinForms
Type: Feature Request
0

Presently none of the controls can be navigated to using the TAB key or the shift TAB combination.

For example, in this picture I would like to be able to go from the Verdana font to the size 12 font using TAB key controls. I would like to be able to do this for all controls within the editor. I have asked support and presently this wouldn't be possible.

 

Completed
Last Updated: 27 Mar 2023 06:39 by ADMIN
Release R1 2023 SP1
The issue can be observed in OpenEdge projects using Telerik UI for WinForms throwing the following error: Assert - Error Trying to update row outside a transaction (15599).
Unplanned
Last Updated: 01 Mar 2023 13:08 by ADMIN

To reproduce:

            this.radCheckBox1.Text = "Something (in brackets)";
            this.radCheckBox1.RightToLeft = System.Windows.Forms.RightToLeft.Yes;

Unplanned
Last Updated: 21 Mar 2023 09:12 by ADMIN
Created by: Martin
Comments: 1
Category: UI for WinForms
Type: Bug Report
0

Repro steps:

  1. Create a RadVirtualGrid with:
    1. A column with a nullable DateTime
    2. Another column with a string or number.
  2. Fill it with one or more rows. The DateTimes remain null.
  3. Edit a DateTime cell, open the dropdown:

  4. Click op button [Today], the date/time in the cell changes.
  5. Click [Tab], the focuses moves to the next cell, but the dropdown remains open:
  6. Click somewhere else in the grid or form, an Exception is thrown:
System.NullReferenceException: Object reference not set to an instance of an object.
   at Telerik.WinControls.UI.RadDateTimePickerCalendar.popupControl_Closing(Object sender, RadPopupClosingEventArgs args)

Expected behavior:

  • The dropdown closes after moving to another cell.
  • No exception occurs.

 

 

Completed
Last Updated: 27 Apr 2023 06:55 by ADMIN
Release R2 2023 (LIB 2023.1.427)

Just to report a minor typo:

FitlerViewTextCategoryItemCreatedEventArgs, in Telerik.WinControls.UI.FilterView

Completed
Last Updated: 13 Apr 2023 08:25 by ADMIN
Release R2 2023 (LIB 2023.1.413)

The designer tries to load the assembly and throws the following error:

 

Declined
Last Updated: 16 Feb 2024 20:33 by ADMIN
Created by: James
Comments: 2
Category: UI for WinForms
Type: Bug Report
0

Zooming in will throw an Exception that crashes the program.

The ZoomLevel needed to cause the exception is dependent on the area of the RadMap selected.

Provider: BingRestMapProvider

ImagerySet AerialWithLabelsOnDemand

 

 

Zooming in over Antarctica, Exception thrown zooming in at MapElement.ZoomLevel 14.

 

Zooming in over Australia, Exception thrown zooming in at MapElement.ZoomLevel 21.

 

Completed
Last Updated: 07 Jun 2023 10:38 by ADMIN
Release R2 2023 (2023.2.606)

Our clients can download different product files from their Telerik account:

https://docs.telerik.com/devtools/winforms/installation-and-upgrades/download-product-files 

Currently, when Digitally Signed Assemblies are necessary, they submit support tickets and the support engineers provide the signed assemblies. It would be nice to be directly uploaded to the Telerik account like the rest of the product files.

Completed
Last Updated: 07 Jun 2023 10:38 by ADMIN
Release R2 2023 (2023.2.606)
Created by: Desislava
Comments: 1
Category: UI for WinForms
Type: Bug Report
0

I downloaded the ERP demo from here: https://www.telerik.com/support/code-library/erp-demo-application-for-winforms

After upgrading the projects to .NET 4.8 and running the application, the following exception is observed:

The full stack trace:


System.Data.Services.Client.DataServiceTransportException
  HResult=0x80131509
  Message=Unable to connect to the remote server
  Source=Microsoft.Data.Services.Client
  StackTrace:
   at System.Data.Services.Client.HttpWebRequestMessage.GetResponse()
   at System.Data.Services.Client.DataServiceContext.GetResponseHelper(ODataRequestMessageWrapper request, IAsyncResult asyncResult, Boolean handleWebException)
   at System.Data.Services.Client.QueryResult.ExecuteQuery()
   at System.Data.Services.Client.DataServiceRequest.GetQuerySetCount(DataServiceContext context)
   at System.Data.Services.Client.DataServiceQueryProvider.ReturnSingleton[TElement](Expression expression)
   at ERP.Client.PurchasesControl.Initialize() in C:\Users\dyordano\Downloads\009a20df-21b2-4e64-b129-eaf9e0a686f5_ERP-CS (1)\ERP.Client\CustomControls\Views\PurchasesControl.cs:line 48
   at ERP.Client.BaseGridControl..ctor() in C:\Users\dyordano\Downloads\009a20df-21b2-4e64-b129-eaf9e0a686f5_ERP-CS (1)\ERP.Client\CustomControls\BaseGridControl.cs:line 49
   at ERP.Client.PurchasesControl..ctor() in C:\Users\dyordano\Downloads\009a20df-21b2-4e64-b129-eaf9e0a686f5_ERP-CS (1)\ERP.Client\CustomControls\Views\PurchasesControl.cs:line 29

  This exception was originally thrown at this call stack:
    System.Net.Sockets.Socket.DoConnect(System.Net.EndPoint, System.Net.SocketAddress)
    System.Net.ServicePoint.ConnectSocketInternal(bool, System.Net.Sockets.Socket, System.Net.Sockets.Socket, ref System.Net.Sockets.Socket, ref System.Net.IPAddress, System.Net.ServicePoint.ConnectSocketState, System.IAsyncResult, out System.Exception)

Inner Exception 1:
WebException: Unable to connect to the remote server

Inner Exception 2:
SocketException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 65.52.19.99:80