Unplanned
Last Updated: 04 Oct 2016 06:40 by ADMIN
Please refer to the attached screenshot.

Workaround: Me.RadDateTimePicker1.DateTimePickerElement.TextBoxElement.MaxSize = New Size(0, 20)
Completed
Last Updated: 20 Sep 2016 08:31 by ADMIN
To reproduce:

1. Add a RadForm and a RadTimePicker/RadDateTimePicker.
2. Change the Enabled property of the RadTimePicker/RadDateTimePicker to false at design time.
3. Apply the Office2013Light theme to the RadTimePicker/RadDateTimePicker at design time.
4. Apply the same theme to the RadForm at design time.

If you run the application, you will notice that RadTimePicker/RadDateTimePicker has a gray back color. However, if you turn on/off the Enabled property in a button's Click event, the back color is not gray.

Workaround: set the Enabled property to false in the Load event.
Completed
Last Updated: 09 Aug 2016 10:07 by ADMIN
Please refer to the attached gif file demonstrating how to reproduce the problem.

Workaround: close the popup when pressing Backspace:

 this.radTextBox1.TextBoxElement.TextBoxItem.TextBoxControl.KeyDown+=TextBoxControl_KeyDown;
private void TextBoxControl_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyData== Keys.Back)
    {
        TextBoxSpellChecker textBoxSpellChecker = _radSpellChecker.GetControlSpellChecker(typeof(RadTextBox)) as TextBoxSpellChecker;
        if (textBoxSpellChecker!=null)
        {
            textBoxSpellChecker.DropDownMenu.ClosePopup(RadPopupCloseReason.Keyboard);
        }
    }
}
Completed
Last Updated: 09 Aug 2016 10:06 by ADMIN
To reproduce:
- Use the SpellCheck as you type functionality with RadTextBox.
- The "Ignore All" and "Add To Dictionary" strings in the context menu are not changed.

Workaround:
public RadForm1()
{
    InitializeComponent();
    radSpellChecker1.AutoSpellCheckControl = radTextBox1;
    TextBoxSpellChecker textBoxControlSpellChecker = this.radSpellChecker1.GetControlSpellChecker(typeof(RadTextBox)) as TextBoxSpellChecker;
    textBoxControlSpellChecker.DropDownMenu.DropDownOpened += DropDownMenu_DropDownOpened;
}

private void DropDownMenu_DropDownOpened(object sender, EventArgs e)
{
    var menu = (RadDropDownMenu)sender;

    foreach (var item in menu.Items)
    {
        if (item.Text == "Add To Dictionary")
        {
            item.Text = "test";
        }
        if (item.Text == "Ignore All")
        {
            item.Text = "test";
        }
    }
}
Declined
Last Updated: 08 Aug 2016 10:33 by ADMIN
To reproduce: add a RadTreeView and a timer. Use the following code:

BindingList<Item> list = new BindingList<Item>();

public Form1()
{
    InitializeComponent();
    this.radTreeView1.TreeViewElement.CreateNodeElement += TreeViewElement_CreateNodeElement;
   
    for (int i = 0; i < 10; i++)
    {
        list.Add(new Item(Guid.NewGuid().ToString(), "Node" + i));
    }

    this.radTreeView1.DataSource = list;
    this.radTreeView1.DisplayMember = "Title";
    this.radTreeView1.ValueMember = "UniqueIdentifier";

    this.radTreeView1.TreeViewElement.AutoSizeItems = true;
    this.timer1.Start();
}

void TreeViewElement_CreateNodeElement(object sender, Telerik.WinControls.UI.CreateTreeNodeElementEventArgs e)
{
    e.NodeElement = new CustomTreeNodeElement();
}

public class Item: System.ComponentModel.INotifyPropertyChanged
{
    public Item(string uniqueIdentifier, string title)
            {
                this._uniqueIdentifier = uniqueIdentifier;
                this._title = title;
            }

    public string UniqueIdentifier
            {
                get
                {
                    return this._uniqueIdentifier;
                }
                set
                {
                    this._uniqueIdentifier = value;
                    OnPropertyChanged("UniqueIdentifier");
                }
            }

    public string Title
            {
                get
                {
                    return this._title;
                }
                set
                {
                    this._title = value;
                    OnPropertyChanged("Title");
                }
            }

    public event PropertyChangedEventHandler PropertyChanged;

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

    private string _uniqueIdentifier;
    private string _title;
}

public class CustomContentElement : TreeNodeContentElement
{
    StackLayoutElement nodeContentContainer;
    LinePrimitive lineElement;
    LightVisualElement idElement;
    RadTextBoxControlElement textBoxElement;

    protected override Type ThemeEffectiveType
            {
                get
                {
                    return typeof(TreeNodeContentElement);
                }
            }

    protected override void InitializeFields()
            {
                base.InitializeFields();
                this.Margin = new Padding(5, 5, 5, 5);

                this.StretchHorizontally = true;
            }

    public override void Synchronize()
    {
        this.DrawFill = true;

        TreeNodeElement treeNodeElement = this.NodeElement;
        RadTreeNode node = treeNodeElement.Data;
        Item dataItem = (Item)node.DataBoundItem;
        if (dataItem != null)
        {
            this.idElement.Text = string.Empty + dataItem.UniqueIdentifier;

            this.textBoxElement.Text = string.Empty + dataItem.Title;
        }
    }

    protected override void CreateChildElements()
            {
                nodeContentContainer = new StackLayoutElement();
                nodeContentContainer.Orientation = Orientation.Vertical;
                nodeContentContainer.StretchHorizontally = true;
                nodeContentContainer.StretchVertically = false;

                idElement = new LightVisualElement();
                idElement.ShouldHandleMouseInput = false;
                idElement.NotifyParentOnMouseInput = true;
                idElement.StretchVertically = false;
                this.nodeContentContainer.Children.Add(idElement);

                lineElement = new LinePrimitive();
                lineElement.BackColor = Color.Black;
                lineElement.Margin = new Padding(10, 0, 10, 0);
                lineElement.StretchVertically = false;
                this.nodeContentContainer.Children.Add(lineElement);

                textBoxElement = new RadTextBoxControlElement();
                textBoxElement.TextChanged += textBoxElement_TextChanged;
                textBoxElement.Margin = new Padding(20, 3, 20, 3);
                textBoxElement.StretchVertically = false;
                this.nodeContentContainer.Children.Add(textBoxElement);

                this.Children.Add(nodeContentContainer);
            }

    private void textBoxElement_TextChanged(object sender, EventArgs e)
    {
        RadTextBoxControlElement tb = sender as RadTextBoxControlElement;
        CustomContentElement contentElement = tb.Parent.Parent as CustomContentElement;
        Item item = contentElement.NodeElement.Data.DataBoundItem as Item;
        if (item.Title != tb.Text)
        {
            item.Title = tb.Text;
        }
    }
}

public class CustomTreeNodeElement : TreeNodeElement
{
    protected override TreeNodeContentElement CreateContentElement()
    {
        return new CustomContentElement();
    }

    protected override Type ThemeEffectiveType
    {
        get
        {
            return typeof(TreeNodeElement);
        }
    }
}

private void timer1_Tick(object sender, EventArgs e)
{
    foreach (Item item in list)
    {
        item.Title = "Node " + DateTime.Now.ToLongTimeString();
    }
}
Completed
Last Updated: 03 Aug 2016 12:19 by ADMIN
To reproduce:

public Form1()
{
    InitializeComponent();

    this.radTextBox1.Multiline = true;
    this.radTextBox1.Size = new Size(200, 200);
    this.radTextBox1.TextChanged += radTextBox1_TextChanged;
}

private void radTextBox1_TextChanged(object sender, EventArgs e)
{
    this.radTextBox1.BackColor = Color.Red;
}

Note: when you keep pressed a specific key, you will notice that the memory consumption is increased, although if you force the GarbageCollector, it is released. It is also noticeable that there is text lagging while typing. Please refer to the attached gif file.

Workaround:
            this.radTextBox1.TextBoxElement.TextBoxItem.TextBoxControl.BackColor = Color.Red;
Completed
Last Updated: 13 Jul 2016 14:25 by ADMIN
RadMaskedEditBox is not able to edit the value when MaskType is set to Numeric, Mask to percentage and CultureInfo NumberFormat CurrencyGroupSeparator is set to "."

Workaround:
CultureInfo ci = new CultureInfo(Thread.CurrentThread.CurrentCulture.LCID, false); //do not use user settings
 
Thread.CurrentThread.CurrentCulture = ci;
Completed
Last Updated: 12 Jul 2016 09:21 by ADMIN
After binding a boolean property to RadDateTimePicker:Checked, changes made in the property reflect in the GUI, but changes made in the GUI even after lost focus are not reflected on the boolean property. The same test was done with winforms DateTimePicker and the expected behaviour was observed(not the situation reported). above). For further testing background, the class wich contains the binded boolean, implements INotifyPropertyChanged.
Completed
Last Updated: 11 Jul 2016 12:16 by ADMIN
To reproduce:
Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("es-CO");
radMaskedEditBox1.MaskType = Telerik.WinControls.UI.MaskType.Numeric;
radMaskedEditBox1.Mask = "C2";
radMaskedEditBox1.Culture = new System.Globalization.CultureInfo("es-CO");

Click in the masked edit box and press the decimal separator key in the num pad, the cursor is not moved to the desired position.

Workaoround:
 private void RadMaskedEditBox1_KeyUp(object sender, KeyEventArgs e)
{
    if (e.KeyValue ==  46)
    {
        var textBoxItem = this.radMaskedEditBox1.MaskedEditBoxElement.TextBoxItem;

        int indexOfDecimalSeparator = this.radMaskedEditBox1.MaskedEditBoxElement.TextBoxItem.Text.ToLower().IndexOf(',');
        if (indexOfDecimalSeparator + 1 <= textBoxItem.Text.Length)
        {
            textBoxItem.SelectionStart = indexOfDecimalSeparator + 1;
        }
        else
        {
            textBoxItem.SelectionStart = indexOfDecimalSeparator;
        }
        e.Handled = true;
    }

}

Completed
Last Updated: 11 Jul 2016 11:01 by ADMIN
Workaround:
1) set the CurrencyNegativePattern to 1
Alternatively:
2) check if the the formatted text is surrounded with brackets and if yes set the value of the masked edit box to be negative
Unplanned
Last Updated: 11 Jul 2016 08:39 by ADMIN
To reproduce:

ThemeResolutionService.ApplicationThemeName = "Office2013Light";
this.radTextBox2.Enabled = false;
 
Workaround:             this.radTextBox2.BackColor = Color.LightGray;
Unplanned
Last Updated: 27 Jun 2016 11:31 by ADMIN
To reproduce:
- Add RadMaskedEditBox to a form.
- Set AutoSize to false.
- Set the height of the control to 30.

Workaround:

radMaskedEditBox1.AutoSize = false;
radMaskedEditBox1.MaskedEditBoxElement.TextBoxItem.MinSize = new Size(0, 30);
Completed
Last Updated: 14 Jun 2016 07:37 by Mieke
ADMIN
Created by: Dess | Tech Support Engineer, Principal
Comments: 1
Category: Editors
Type: Bug Report
1
To reproduce:

this.radDateTimePicker1.Format = DateTimePickerFormat.Short;
this.radDateTimePicker1.Value = new DateTime(2016, 5, 12);
this.radTextBox1.Text = "9/5/2016";

Second scenario:

this.radDateTimePicker1.Format = DateTimePickerFormat.Short;

If you copy "1/7/16" and paste it into RadDateTimeicker, the result date will be "1/7/1616". In the previous version, the result was correct 1/7/2016.

Copy the value in the text box and paste it in RadDateTimePicker.

Workaround: 

public Form1()
{
    InitializeComponent();
    this.radDateTimePicker1.Format = DateTimePickerFormat.Short;
    this.radDateTimePicker1.Value = new DateTime(2016, 5, 12);
    this.radTextBox1.Text = "9/5/2016";
    this.radDateTimePicker1.ValueChanging += radDateTimePicker1_ValueChanging;

    this.radDateTimePicker1.DateTimePickerElement.TextBoxElement.TextBoxItem.TextBoxControl.KeyPress += TextBoxControl_KeyPress; 
}

string clipboardData;

private void TextBoxControl_KeyPress(object sender, KeyPressEventArgs e)
{
    if (e.KeyChar == '\x16')
    {
        if (clipboardData != null)
        {
            this.radDateTimePicker1.Text = clipboardData;
            clipboardData = null;
        }
    }
}

private void radDateTimePicker1_ValueChanging(object sender, Telerik.WinControls.UI.ValueChangingEventArgs e)
{
    if (clipboardData == null)
    {
        clipboardData = RadMaskedEditBoxElement.GetClipboardText();
    }
}
Completed
Last Updated: 10 Jun 2016 05:17 by ADMIN
To reproduce:

public Form1()
{
    InitializeComponent();

    this.radDateTimePicker1.Culture  = new System.Globalization.CultureInfo("en-GB");
    RadTimePickerLocalizationProvider.CurrentProvider = new MyTimePickerLocalizationProvider();
    this.radDateTimePicker1.DateTimePickerElement.ShowTimePicker = true; 
} 

class MyTimePickerLocalizationProvider : RadTimePickerLocalizationProvider
{
    public override string GetLocalizedString(string id)
    {
        switch (id)
        {
            case RadTimePickerStringId.HourHeaderText:
                return "TEST Hours";
            case RadTimePickerStringId.MinutesHeaderText:
                return "TEST Minutes";
            case RadTimePickerStringId.CloseButtonText:
                return "TEST CLOSE";
            default:
                return string.Empty;
        }
    }
}

Workaround:
 RadDateTimePickerCalendar calendarBehaviorFrom = this.radDateTimePicker1.DateTimePickerElement.GetCurrentBehavior() as RadDateTimePickerCalendar;
 calendarBehaviorFrom.Calendar.ShowFooter = true;
 calendarBehaviorFrom.PopupControl.Opened += PopupControl_PopupOpened;

private void PopupControl_PopupOpened(object sender, EventArgs args)
        {
            RadDateTimePickerDropDown dd = sender as RadDateTimePickerDropDown;
            TimePickerDoneButtonContent buttonContent = ((RadPanel)dd.HostedControl).Controls[2] as TimePickerDoneButtonContent;
            var doneButton = ((Telerik.WinControls.UI.TimePickerDoneButtonElement)(buttonContent.RootElement.Children[0]));
            doneButton.ButtonElement.Text = RadTimePickerLocalizationProvider.CurrentProvider.GetLocalizedString(RadTimePickerStringId.CloseButtonText); 
        }
Unplanned
Last Updated: 06 Jun 2016 13:40 by ADMIN
ADMIN
Created by: Dess | Tech Support Engineer, Principal
Comments: 0
Category: Editors
Type: Bug Report
0
Workaround: increase the height:

this.radTimePicker1.MinimumSize = new Size(0, 28);
Completed
Last Updated: 26 May 2016 13:56 by ADMIN
To reproduce: Using the below code, type something in the text box and execute the button shortcut => the caret remains where it was

 protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);

            AddTextBoxControl();

            radButton1.ButtonElement.Shortcuts.Add(new RadShortcut(Keys.Alt, new Keys[] { Keys.R }));
        }

        private void radButton1_Click(object sender, EventArgs e)
        {
            radTextBoxControl1.Text = "";
        }

Workaround:
Instead of setting the Text to empty string, use the control Clear method.
Completed
Last Updated: 19 May 2016 14:47 by ADMIN
Completed
Last Updated: 09 May 2016 06:36 by ADMIN
To reproduce:
- Add RadMaskedEditBox to a form and set its ReadOnly property to true.
- Paste a valid value using the Ctrl+V key combination.

Workaround:
- Disable the corresponding key combination in the KeyDown event:

void radMaskedEditBox1_KeyDown(object sender, KeyEventArgs e)
{
    if (e.Control && e.KeyCode == Keys.V)
    {
        e.SuppressKeyPress = true;
    }
}
Completed
Last Updated: 06 May 2016 14:06 by ADMIN
To reproduce:
- Set the mask to regex and paste with Ctrl + V.

Workaround:
private void RadmaskedEditBox1_KeyPress(object sender, KeyPressEventArgs e)
{
    if (e.KeyChar == '\x16')
    {
        radmaskedEditBox1.MaskedEditBoxElement.TextBoxItem.Paste();
    }
}