Unplanned
Last Updated: 08 Apr 2019 06:42 by ADMIN

Use attached to reproduce:

1. Click the button

2. Change the tab and go back to the diagram

Workaround:

Add the layout before showing the form

Completed
Last Updated: 15 Feb 2022 08:19 by Sylvain
Release R1 2022 SP1

In English: "dog's" is marked as incorrect

In French: "L'ordinateur" is marked as incorrect

 

Completed
Last Updated: 09 Apr 2019 14:44 by Dimitar
Release R2 2019 (LIB 2019.1.415)
Created by: Chris
Comments: 2
Category: UI for WinForms
Type: Bug Report
1

How to reproduce: add a MapCallout to a layer and then try to hit test it in the MouseDown event of the control. The element is not always returned even though it contains the mouse location:

private void RadMap1_MouseDown(object sender, MouseEventArgs e)
{
    PointL point = new PointL(e.X - this.radMap1.MapElement.PanOffset.Width, e.Y - this.radMap1.MapElement.PanOffset.Height);
    MapCallout callout2 = this.radMap1.Layers.HitTest(point) as MapCallout;
    if (callout2 != null)
    {
        RadMessageBox.Show("MapCallout!");
    }
}

Completed
Last Updated: 15 Apr 2019 10:59 by Dimitar
Release R2 2019
See attached to reproduce.

Workaround:
class MyImageEditor : RadImageEditor
{
    protected override RadImageEditorElement CreateImageEditorElement()
    {
        return new MyImageEditorElement();
    }
}
class MyImageEditorElement : RadImageEditorElement
{
    protected override ImageEditorCanvasElement CreateCanvasElement()
    {
        return new MyCanvasElement(this);
    }
}

class MyCanvasElement : ImageEditorCanvasElement
{
    public MyCanvasElement(RadImageEditorElement owner) : base(owner)
    {

    }
    protected override void PaintElement(IGraphics graphics, float angle, SizeF scale)
    {
        base.PaintElement(graphics, angle, scale);

        if (this.IsCropping)
        {
            Rectangle dynamicCropRect = GetCropRectangle();
            SizeF scaleDown = new SizeF(1f / this.DpiScaleFactor.Width, 1f / this.DpiScaleFactor.Height);

            this.AcceptButton.PositionOffset = TelerikDpiHelper.ScaleSizeF(new SizeF((dynamicCropRect.X + dynamicCropRect.Width / 2f) - this.AcceptButton.Location.X - this.AcceptButton.DesiredSize.Width,
                dynamicCropRect.Y + dynamicCropRect.Height - (this.AcceptButton.DesiredSize.Height + 10)), scaleDown);
            this.CancelButton.PositionOffset = TelerikDpiHelper.ScaleSizeF(new SizeF((dynamicCropRect.X + dynamicCropRect.Width / 2f) - this.CancelButton.Location.X - this.CancelButton.DesiredSize.Width,
                (dynamicCropRect.Y + dynamicCropRect.Height - (this.CancelButton.DesiredSize.Height + 10)) - this.CancelButton.Location.Y), scaleDown);
        }

    }
}
 
Completed
Last Updated: 21 Jan 2020 12:52 by ADMIN
Release R1 2020 SP1 (LIB 2020_1_127)
Created by: Ricardo
Comments: 1
Category: UI for WinForms
Type: Bug Report
1

To reproduce:

 radMaskedEditBox1.MaskedEditBoxElement.ContextMenuEnabled = true;

Workaround:

public RadForm1()
{
    InitializeComponent();
    radMaskedEditBox1.MaskType = Telerik.WinControls.UI.MaskType.Standard;
    radMaskedEditBox1.Mask = "9999999999";
    radMaskedEditBox1.MaskedEditBoxElement.ContextMenuEnabled = true;
    radMaskedEditBox1.MaskedEditBoxElement.ContextMenu = BuildContextMenu();
}
private RadContextMenu BuildContextMenu()
{
    var contextMenu = new RadContextMenu();


    if (contextMenu == null)
    {
        contextMenu = new RadContextMenu();
    }

    if (contextMenu.Items.Count == 0)
    {
        RadMenuItem menuItem = new Telerik.WinControls.UI.RadMenuItem("Cut");
        menuItem.Name = "Cut";
        contextMenu.Items.Add(menuItem);
        menuItem.Click += new System.EventHandler(this.ContextMenuMenuItem_Click);

        menuItem = new Telerik.WinControls.UI.RadMenuItem("Test");
        menuItem.Name = "Copy";
        contextMenu.Items.Add(menuItem);
        menuItem.Click += new System.EventHandler(this.ContextMenuMenuItem_Click);

        menuItem = new Telerik.WinControls.UI.RadMenuItem("Paste");
        menuItem.Name = "Paste";
        contextMenu.Items.Add(menuItem);
        menuItem.Click += new System.EventHandler(this.ContextMenuMenuItem_Click);

        menuItem = new Telerik.WinControls.UI.RadMenuItem("Delete");
        menuItem.Name = "Delete";
        contextMenu.Items.Add(menuItem);
        menuItem.Click += new System.EventHandler(this.ContextMenuMenuItem_Click);

        menuItem = new Telerik.WinControls.UI.RadMenuItem("Select All");
        menuItem.Name = "Select All";
        contextMenu.Items.Add(menuItem);
        menuItem.Click += new System.EventHandler(this.ContextMenuMenuItem_Click);
    }
    return contextMenu;
}
void ContextMenuMenuItem_Click(object sender, EventArgs e)
{
    switch (((Telerik.WinControls.UI.RadMenuItem)(sender)).Name.ToUpper())
    {
        case "UNDO":
            //this.radMaskedEditBox1.MaskedEditBoxElement.TextBoxItem.;
            break;
        case "CUT":
            this.radMaskedEditBox1.MaskedEditBoxElement.TextBoxItem.Cut();
            break;
        case "COPY":
            this.radMaskedEditBox1.MaskedEditBoxElement.TextBoxItem.Copy();
            break;
        case "PASTE":
            this.radMaskedEditBox1.MaskedEditBoxElement.TextBoxItem.Paste();
            if (!this.radMaskedEditBox1.MaskedEditBoxElement.Provider.Validate(this.Text))
            {
                this.radMaskedEditBox1.MaskedEditBoxElement.TextBoxItem.TextBoxControl.Undo();
            }

            break;
        case "DELETE":
            this.radMaskedEditBox1.MaskedEditBoxElement.TextBoxItem.Clear();
            break;
        case "SELECT ALL":
            this.radMaskedEditBox1.MaskedEditBoxElement.TextBoxItem.SelectAll();
            break;
        default:
            break;
    }
}


Completed
Last Updated: 01 Sep 2020 12:25 by ADMIN
Release R3 2020
OpenClipboard Failed (Exception from HRESULT: 0x800401D0 (CLIPBRD_E_CANT_OPEN))
Unplanned
Last Updated: 24 Aug 2020 07:46 by ADMIN
Provide support for inserting a Spreadsheet control as in  MS Word.
Unplanned
Last Updated: 26 Aug 2020 09:01 by ADMIN
Created by: Sunny
Comments: 1
Category: UI for WinForms
Type: Bug Report
1

I'm trying to initialize RadControlSpyForm in a .NET 2.0 application and it throws the following exception:

System.InvalidCastException: 'Unable to cast object of type 'System.Windows.Forms.SplitContainer' to type 'System.ComponentModel.ISupportInitialize'.

I did some research, and I found that since SplitContainer doesn't inherit from System.ComponentModel.ISupportInitialize until .NET 4.0, this message shows up in solutions where a project is downgraded from .NET 4.0, but the Form designer isn't regenerated to remove the SplitContainer cast to ISupportInitialize to call BeginInit() and EndInit().

 

Completed
Last Updated: 02 Feb 2023 09:38 by ADMIN
Release R1 2023
Completed
Last Updated: 07 Oct 2020 15:54 by ADMIN
Release R3 2020 SP1

Run the application at 150% and maximize the form. You will notice that with R3 2020 the split container overlaps with the status strip at the bottom:

Workaround: instead of setting the Anchor property to all sides, set the Dock property to Fill.

Completed
Last Updated: 19 May 2022 14:24 by ADMIN
Release R2 2022 SP1
Created by: Stoyan
Comments: 0
Category: UI for WinForms
Type: Bug Report
1

The solution in this KB article is used: https://docs.telerik.com/devtools/winforms/knowledge-base/clickonce-application-is-broken 

Follow the steps:

1. Set your main monitor to be with higher than 100% DPI scaling (e.g. 175%, 200%)

2. Set the secondary monitor with 100% DPI scaling.

3. Run the exe from the project on the secondary monitor with 100% DPI scaling. You will notice that all controls that host the standard MS TextBox are incorrectly scaled:

 

Completed
Last Updated: 26 Oct 2020 12:41 by ADMIN
Release R3 2020 SP1

If you have two RadGridView controls and you want to export both of the grids to a common file on two different sheets, it is suitable to use FileExportMode.NewSheetInExistingFile. However, when using the export overload to a stream doesn't respect the ExportMode.

Workaround: use exporting to a file:

            string exportFile = @"..\..\exportedData.xlsx";
            GridViewSpreadStreamExport spreadStreamExport = new GridViewSpreadStreamExport(this.radGridView1);
            spreadStreamExport.FileExportMode = FileExportMode.NewSheetInExistingFile;
            spreadStreamExport.ExportVisualSettings = false;
            spreadStreamExport.RunExport(exportFile, new SpreadStreamExportRenderer());

 

Completed
Last Updated: 23 Sep 2022 13:07 by ADMIN
Release R3 2022

ThemeResolutionService.ApplicationThemeName = "Office2019Dark"; this.radDropDownList1.EnableAlternatingItemColor = true;

Unplanned
Last Updated: 29 Sep 2022 13:03 by ADMIN
Created by: erwin
Comments: 3
Category: UI for WinForms
Type: Bug Report
1

To replicate the missing button when the application is run on my main monitor with 150% DPI scaling:



If the RadControl.EnableRadAutoScale property is set to false in the Program.cs file, the button is placed as expected:



When I replace the form to inherit from RadForm, not the MS Form, the button is clipped:

Completed
Last Updated: 15 Dec 2020 13:33 by ADMIN
Release R1 2021
Created by: Vishal
Comments: 0
Category: UI for WinForms
Type: Feature Request
1

Add an opportunity to use custom fonts in Html-like text formatting.

Example:

this.radTreeView1.Nodes.Add("<html><font="Roboto Medium">Node Strike</font></html>");

 

Completed
Last Updated: 15 Dec 2020 09:20 by ADMIN
Release R1 2021 (LIB 2020.3.1215)

Clicking on a tab item in the design surface should select the tab. The animation demonstrates the current behavior:

Completed
Last Updated: 03 Jun 2020 16:31 by ADMIN
Release R2 2020 SP1 (LIB 2020_2_603)

merging only these assembly still the icons are not visible in Spreadsheet ribbon menu

C:\Program Files (x86)\Microsoft\ILMerge\ILMerge.exe" /allowdup /target:SymphonyMESUtil.exe  /targetplatform:"v4, C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1" /out:Merge\SymphonyMESUtil.exe ^
SymphonyMESUtil.exe ^
Telerik.WinControls.dll ^
Telerik.WinControls.UI.dll ^
TelerikCommon.dll ^
Telerik.WinControls.GridView.dll ^
Telerik.Windows.Documents.Spreadsheet.FormatProviders.OpenXml.dll ^
Telerik.Windows.Documents.Spreadsheet.FormatProviders.Pdf.dll ^
Telerik.Windows.Documents.Spreadsheet.dll ^
Telerik.WinControls.RadSpreadsheet.dll ^
Telerik.Windows.Documents.Core.dll ^
Telerik.Windows.Documents.Fixed.dll

Completed
Last Updated: 05 Apr 2023 10:02 by ADMIN
Release R1 2023 SP1

This is about this 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 
            }
        }

The method GridViewTemplate.SetError accepts a parameter of type GridViewCellCancelEventArgs (named e), but uses the information to create a new object of type GridViewDataErrorEventArgs (named args) and uses information from e to fill args.

The method then fires an event with args. Args also has a property Cancel which can be set in the event handlers. But nothing is done with that property.

Parameter e also has a property Cancel which is never be filled. So it could be useful, at the end of SetError, to set e.Cancel with args.Cancel. This way the caller can use the Cancel information from the events.

This request is also related to my next request. 

PS: Why is GridViewCellCancelEventArgs  called this way? It implies it has arguments for an event, but it is not used for an event, am I right?

Duplicated
Last Updated: 18 Jul 2022 11:48 by ADMIN
Created by: Martin
Comments: 3
Category: UI for WinForms
Type: Bug Report
1

Reproduction steps:

  • Create a new RadPropertyGrid
  • Add an instance of a class with at least one property of type Nullable<int>.
  • The property does not have an DefaultValueAttribute.
  • Make sure that property has the value null.
  • In de UI, the field appears to be empty.
  • In de UI, click on the field to edit it.

Observed behavior:

  • An edit-box appears with the value zero (0).
  • Leaving this field (without entering any digits) sets the property with that 0, which is undesirable.

Expected behavior:

  • An empty edit-box appears, without any digits.
  • Leaving this field (without entering any digits) should keep the property null.
Unplanned
Last Updated: 11 Dec 2020 10:12 by ADMIN

It would be good to offer default localization providers for some languages like German, Spanish, French, etc.

It is possible to use the following site that Microsoft provides for this purpose: https://www.microsoft.com/en-us/language