Approved
Last Updated: 05 Jun 2019 12:30 by Desislava
ADMIN
Created by: Dess | Tech Support Engineer, Sr.
Comments: 1
Category: UI Framework
Type: Bug Report
0
After revamping the documentation for the Telerik UI for WinForms product, the following problems occurred:

1. Search for a specific class or method in the search box in the following site: https://docs.telerik.com/devtools/winforms/introduction. Select one of the results referring to the API documentation. As a result you will be navigated to the main page of the API reference instead of to the respective class or method. Refer to the Problem1.gif file. It seems that the search results from the API reference return old links for the previous API link pattern.

2. The search box in https://docs.telerik.com/devtools/winforms/api/ is significantly lagging while typing. We should consider performing the search operation after pressing Enter and not with each keystroke. Please refer to the Problem2.gif file.

3.  When you scroll the navigation view on the left side to a certain position and select an article, the vertical scrollbar sometimes gets reset to the top position and you have to scroll back.  (Note that this problem is not reproduced each time).
Approved
Last Updated: 31 Dec 2018 09:43 by ADMIN
Use attached to reproduce inside VisualStudio 2017.

1. Run "1342574 ListControl" project
2. Add CodedUI test in "1342574 CodeUISample" project. ("Record actions, edit UI map or add assertions" option)
3. After starting recording, click inside radGridView cell, type something and click Tab.
4. Pause and Generate Code.

After running the recorded CodedUI test and you will see that it clicks on the grid cell but does not type any text.

Note that the issue is not reproducible in VS 2012.
 
Approved
Last Updated: 12 Nov 2019 14:59 by ADMIN
To reproduce: please run the application provided in the ticket. You will notice that RadGridView stops updating.

Workaround: use MethodInvoker for the update operation:

        private void readTicks()
        {
            DateTime now = DateTime.Now;
            Tick previouse = null;
            for (int i = 0; i < lines.Length; i++)
            {
                if (canceled)
                    return;

                var t = new Tick();

                try
                {
                    try
                    {
                        JsonConvert.PopulateObject(lines[i], t);
                    }
                    catch
                    {
                        continue;
                    }


                    var c = contracts[t.ContractId];
                    c.Row[(int)t.TickType] = t;
                    c.CurrentTickSetNr++;

                    if (this.radGridView1.InvokeRequired)
                    {
                        this.radGridView1.Invoke(new MethodInvoker(delegate { c.Fire(t); }));
                    }
                    else
                    {
                        c.Fire(t);
                    }

                    previouse = t;
                    OnTick?.Invoke(c.ConId, i);
                }
                catch (Exception e)
                {
                    Debug.WriteLine(e.Message);
                }
            }

            OnDone?.Invoke(this, new EventArgs());
        }
Approved
Last Updated: 21 Feb 2018 13:19 by ADMIN
How to reproduce: check the attached project and compare the font size of the two labels. Also when the form is moved from a screen with HDPI to a standard screen with DPI=96 the font does change.
Approved
Last Updated: 20 Nov 2017 16:07 by ADMIN
Workaround: 
The vsdiffmerge.exe merge tool in Visual Studio 2017 is usually located here: C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer. You will need to create one additional folder named Ide inside the Team Explorer folder Then you can copy the vsdiffmerge.exe file from the Team Explorer folder to the newly created Ide folder. You can check the attached vsdiffmerge-path.png screenshot.

Then you can create the environment variable like this:
Variable name: VS120COMNTOOLS
Path: C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\IDE
Approved
Last Updated: 14 Aug 2017 10:58 by ADMIN
Use attached to reproduce.
Approved
Last Updated: 30 Aug 2017 07:34 by Jorman
To reproduce:
1. Add HelpProvider on the form.
2. Add RadButton(or any other RadControl).
3. Use the following code:
this.helpProvider1.SetHelpString(this.radButton1, "RadButton help message.");
this.MaximizeBox = false;
this.MinimizeBox = false;
this.HelpButton = true;
4. Run the form, click form's help button and then click the button. - Help dialog is shown and instantly closed.

Workaround:
Subscribe to the control's HelpRequested event and show a tooltip.
this.helpProvider1.SetShowHelp(this.radButton1, false);
this.radButton1.HelpRequested += Control_HelpRequested;

private void Control_HelpRequested(object sender, HelpEventArgs hlpevent)
{
    Control control = sender as Control;
    if (control == null)
    {
        return;
    }

    hlpevent.Handled = true;
    RadToolTip tip = new RadToolTip();
    tip.Show(this.helpProvider1.GetHelpString(control), 3000);
}
Approved
Last Updated: 27 Jun 2016 11:37 by ADMIN
To reproduce:
- Add RadDropDownListElement to a ribbon group
- Disable then enable the control.
- Additional button border is shown

Workaround:
radDropDownListElement1.Padding = new Padding(0);
Approved
Last Updated: 30 Mar 2016 13:51 by ADMIN
To reproduce add RadGroupBoxElement in another control (for example in a ribbon group) and use the VisualStudio2012 theme.

Workaround: either open the theme and set the GroupBoxElement theming to be reused in other controls or use the following snippet to do the same:
 private void FixTheme()
        {
            string controlType = "Telerik.WinControls.UI.RadGroupBox";
            StyleGroup styleGroup = ThemeResolutionService.GetTheme("VisualStudio2012Light").FindStyleGroup(controlType);
            styleGroup.Registrations.Add(new StyleRegistration("ElementTypeDefault", "Telerik.WinControls.UI.RadGroupBoxElement", controlType, string.Empty, string.Empty));
        }
Approved
Last Updated: 30 Mar 2016 14:00 by ADMIN
Approved
Last Updated: 30 Mar 2016 14:00 by ADMIN
To reproduce: add a RadButtonElement to the a RadRibbonBar group. Set its Text property to "<html>html formatted text" and the Enabled property to false. By default, its UseCompatibleTextRendering property is set to true, but the text is rendered blurred. Please see the attached file.
Approved
Last Updated: 30 Mar 2016 13:50 by ADMIN
Workaround: 
RadPageViewBackstageElement backStageElement = radPageView1.ViewElement as RadPageViewBackstageElement;
backStageElement.ItemContainer.MinSize = new Size(300, 0);
Approved
Last Updated: 06 Apr 2016 15:29 by ADMIN
To reproduce: 
1. Use the following code snippet:
public class ViewModel:INotifyPropertyChanged
{
    public ViewModel()
    {
    }

    private bool _isShown;

    public bool IsShown
    {
        get
        {
            return this._isShown;
        }
        set
        {
            this._isShown = value;
            OnPropertyChanged("IsShown");
        }
    }

    public event PropertyChangedEventHandler PropertyChanged;

    protected void OnPropertyChanged(string propertyName)
    {
        PropertyChangedEventHandler handler = PropertyChanged;
        if (handler != null)
            handler(this, new PropertyChangedEventArgs(propertyName));
    }
}

2. Add a MS Panel and a RadPanel to the form.
3. Add Panel.DataBindings at design time for its Visible property to the ViewModel.IsShown property.
4. When you run the application, the MS Panel is not visible. However, if you remove the RadPanel it is shown. Please refer to the attached sample video illustrtaing better the performed steps.

Approved
Last Updated: 30 Mar 2016 13:59 by ADMIN
To reproduce:
- Add the map control to RadSplitContainer (take the map control from here: www.vdstech.com)
- Zoom with two finger gesture on a touch screen.
Approved
Last Updated: 29 Mar 2016 10:09 by ADMIN
To reproduce:

Add a RadGridView with some data and group it. Start the application

Create a CodedUI project and a new test. The CodedUI Test Builder will apper. Click the arrow button and try to select a child row in the group rows. You will see that the group row can be selected, but not a child.
Approved
Last Updated: 30 Mar 2016 13:59 by ADMIN
To reproduce:

Add a RadShortcut to a RadMenuItem which is in a context menu:

RadContextMenu m = new RadContextMenu();

RadGridView grid = new RadGridView
{
    Parent = this,
    Dock = DockStyle.Fill
};

RadContextMenuManager mm = new RadContextMenuManager();
mm.SetRadContextMenu(grid, m);

RadMenuItem rtsmNew = new RadMenuItem("New");
rtsmNew.Click += rtsmNew_Click;

RadShortcut rs = new RadShortcut(Keys.None, Keys.F2);
rtsmNew.Shortcuts.Add(rs);
rtsmNew.HintText = rs.GetDisplayText();

m.Items.Add(rtsmNew);

..

private void rtsmNew_Click(object sender, EventArgs e)
{
        new Form().ShowDialog();
}



Workaround:

Check whether the context menu is visible before showing the form:

private void rtsmNew_Click(object sender, EventArgs e)
{
    RadMenuItem item = sender as RadMenuItem;
    if (item.ElementTree.Control.Visible)
    {
        (item.ElementTree.Control as RadContextMenuDropDown).ClosePopup(RadPopupCloseReason.CloseCalled);
        new Form().ShowDialog();
    }
}

Approved
Last Updated: 30 Mar 2016 13:59 by ADMIN
ADMIN
Created by: George
Comments: 0
Category: UI Framework
Type: Bug Report
1
To reproduce:

Set an image to the ImagePrimitive of the RadButtonElement of RadButton. Also set the ImageLayout property to Stretch, Zoom or anything else. You will see that this property has no effect.

Workaround:

Use LightVisualElement. This is how it can be used as control:

[ToolboxItem(true)]
public class RadLightVisualButton : RadControl
{
    private RadLightVisualButtonElement buttonElement;


    public RadLightVisualButtonElement ButtonElement
    {
        get
        {
            return buttonElement;
        }
    }


    protected override void CreateChildItems(RadElement parent)
    {
        base.CreateChildItems(parent);


        this.buttonElement = new RadLightVisualButtonElement();
        parent.Children.Add(this.buttonElement);
    }
}


public class RadLightVisualButtonElement : LightVisualElement
{
    protected override Type ThemeEffectiveType
    {
        get
        {
            return typeof(LightVisualElement);
        }
    }
}

Approved
Last Updated: 30 Mar 2016 13:50 by ADMIN
To reproduce:

Add an mdi child to a form:

this.IsMdiContainer = true;
new Form
{
    MdiParent = this
}.Show();

ThemeResolutionService.ApplicationThemeName = new VisualStudio2012DarkTheme().ThemeName;

Start the application and maximize the child form. You will see that there is no status bar for the child form. The same behavior occurs with the VisualStudio2012LightTheme.

Workaround:

You need to set images to the buttons in the title bar:

this.FormElement.MdiControlStrip.MinimizeButton.Image = this.FormElement.TitleBar.MinimizeButton.Image;
this.FormElement.MdiControlStrip.MaximizeButton.Image = this.FormElement.TitleBar.MaximizeButton.Image;
this.FormElement.MdiControlStrip.CloseButton.Image = this.FormElement.TitleBar.CloseButton.Image;


this.FormElement.MdiControlStrip.MinimizeButton.ShowBorder = this.FormElement.MdiControlStrip.MaximizeButton.ShowBorder = this.FormElement.MdiControlStrip.CloseButton.ShowBorder = false;

Approved
Last Updated: 30 Mar 2016 13:49 by ADMIN
To reproduce:

Create a RadPropertyGrid and set its SelectedObject. Set the theme to VisualStudio2012Light, change a property of the selected object and select another property, you will see that the previous property is selected. Now scroll until the previous property is no longer visible, now scroll back until it is visible, you will see that the selection is gone. By design this selection should not exist at all.

Workaround:

Open the theme with VisualStyleBuilder => RadPropertyGrid => PropertyGridElement => PropertyGridTableElement => PropertyGridItemElement and set the FillTransparent repository to the PropertyGridItemElement.IsModified state.
Approved
Last Updated: 30 Mar 2016 13:51 by ADMIN
ADMIN
Created by: Stefan
Comments: 0
Category: UI Framework
Type: Bug Report
1
To reproduce:

 public Form2() { InitializeComponent(); MyControl c = new MyControl(); c.Dock = DockStyle.Fill; this.Controls.Add(c); }

public class MyControl : RadControl
{
    protected override void CreateChildItems(RadElement parent)
    {
        base.CreateChildItems(parent);
        LightVisualElement element = new LightVisualElement();
        element.Text = "Hello" + "\t" + "World";
        element.StretchHorizontally = true;
        element.StretchVertically = true;
        parent.Children.Add(element);
    }
}

Workaround: 

   public partial class Form2 : Form

    {
        public Form2()
        {
            InitializeComponent();
            MyControl c = new MyControl();
            c.Dock = DockStyle.Fill;
            this.Controls.Add(c);
        }

        public class MyControl : RadControl
        {
            protected override void CreateChildItems(RadElement parent)
            {
                base.CreateChildItems(parent);
                LightVisualElement element = new MyElement();
                element.Text = "Hello" + "\t" + "World";
                element.StretchHorizontally = true;
                element.StretchVertically = true;
                parent.Children.Add(element);
            }

            public class TextGraphics : RadGdiGraphics
            {
                const float TabWidth = 100;

                public TextGraphics(Graphics g) : base(g)
                {
                }

                public override void DrawString(string drawString, Rectangle rectangle, Font font, Color color, ContentAlignment alignment, StringFormat stringFormat, Orientation orientation, bool flipText)
                {
                    stringFormat.SetTabStops(0, new float[] { TabWidth });
                    base.DrawString(drawString, rectangle, font, color, alignment, stringFormat, orientation, flipText);
                }

                public override void DrawString(string drawString, Rectangle rectangle, Font font, Color color, ContentAlignment alignment, StringFormat stringFormat, ShadowSettings shadow, System.Drawing.Text.TextRenderingHint textRendering, Orientation orientation, bool flipText)
                {
                    stringFormat.SetTabStops(0, new float[] { TabWidth });
                    base.DrawString(drawString, rectangle, font, color, alignment, stringFormat, shadow, textRendering, orientation, flipText);
                }

                public override void DrawString(string drawString, RectangleF rectangle, Font font, Color color, ContentAlignment alignment, StringFormat stringFormat, Orientation orientation, bool flipText)
                {
                    stringFormat.SetTabStops(0, new float[] { TabWidth });
                    base.DrawString(drawString, rectangle, font, color, alignment, stringFormat, orientation, flipText);
                }

                public override void DrawString(string drawString, RectangleF rectangle, Font font, Color color, ContentAlignment alignment, StringFormat stringFormat, ShadowSettings shadow, System.Drawing.Text.TextRenderingHint textRendering, Orientation orientation, bool flipText)
                {
                    stringFormat.SetTabStops(0, new float[] { TabWidth });
                    base.DrawString(drawString, rectangle, font, color, alignment, stringFormat, shadow, textRendering, orientation, flipText);
                }
            }

            public class MyElement : LightVisualElement
            {
                protected override void PaintElement(Telerik.WinControls.Paint.IGraphics graphics, float angle, SizeF scale)
                {
                    base.PaintElement(graphics, angle, scale);
                }

                protected override void PaintText(IGraphics graphics)
                {
                    graphics = new TextGraphics(graphics.UnderlayGraphics as Graphics);
                    base.PaintText(graphics);
                }
            }
        }
    }
1 2