RadAutoCompleteBox - add functionality that allow you to show Popup without typing any char.
Please refer to the attached sample project and try to open the form's designer. If you comment [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)] for the EditarTextBox property (typeof(RadTextBox)), clean and rebuild, the designer is opened as expected. Workaround: use RadTextBoxControl.
Currently all spell checker dialogs are not accessible for customization.
To reproduce use the following code and zoom to Years level: this.radDateTimePicker1.Culture = new System.Globalization.CultureInfo("ps-AF"); radDateTimePicker1.DateTimePickerElement.Calendar.HeaderNavigationMode = Telerik.WinControls.UI.HeaderNavigationMode.Zoom;
To reproduce: Add a RadTextBoxControl and set the SelectionColor property to Red. You will notice that the selection color is semi-transparent and it seems like pink. In order to obtain real Red selection color, it is necessary to set the SelectionOpacity property to 255. However, the selected text is not visible. Please refer to the attached screenshot. Workaround: public class CustomTextBoxControl : RadTextBoxControl { public override string ThemeClassName { get { return typeof(RadTextBoxControl).FullName; } } protected override RadTextBoxControlElement CreateTextBoxElement() { return new CustomRadTextBoxControlElement(); } } public class CustomRadTextBoxControlElement : RadTextBoxControlElement { protected override Type ThemeEffectiveType { get { return typeof(RadTextBoxControlElement); } } protected override TextBoxViewElement CreateViewElement() { return new CustomTextBoxViewElement(); } } public class CustomTextBoxViewElement : TextBoxViewElement { protected override void PaintChildren(IGraphics graphics, Rectangle clipRectange, float angle, SizeF scale, bool useRelativeTransformation) { this.SelectionPrimitive.PaintPrimitive(graphics, angle, scale); base.PaintChildren(graphics, clipRectange, angle, scale, useRelativeTransformation); } protected override void PostPaintChildren(IGraphics graphics, Rectangle clipRectange, float angle, SizeF scale) { if (this.SelectionPrimitive == null) { return; } if (this.Multiline && this.WordWrap) { this.SelectionPrimitive.TextBoxElement.Navigator.RestoreSelection(); } } }
To reproduce: use the following code snippet and try to input some numeric value public RadForm1() { InitializeComponent(); this.radMaskedEditBox1.MaskType = Telerik.WinControls.UI.MaskType.Numeric; this.radMaskedEditBox1.ValueChanged += radMaskedEditBox1_ValueChanged; } private void radMaskedEditBox1_ValueChanged(object sender, EventArgs e) { Console.WriteLine(this.radMaskedEditBox1.Value); }
example: Imports Telerik.WinControls.UI Imports Telerik.WinControls.RichTextBox.Proofing Imports System.IO Imports System.Globalization Public Class Form1 Dim radTextBox1 As RadTextBox = New RadTextBox Dim radSpellChecker1 As RadSpellChecker = New RadSpellChecker Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load radTextBox1.Parent = Me.Panel1 radTextBox1.Multiline = True radTextBox1.Dock = DockStyle.Fill radSpellChecker1.SpellCheckMode = SpellCheckMode.WordByWord Dim textBoxControlSpellChecker As IControlSpellChecker = Me.radSpellChecker1.GetControlSpellChecker(GetType(RadTextBox)) Dim documentSpellChecker As DocumentSpellChecker = TryCast(textBoxControlSpellChecker.SpellChecker, DocumentSpellChecker) Dim ms As New MemoryStream(My.Resources.sv_SE ) Dim dictionary As New WordDictionary() dictionary.Load(ms) documentSpellChecker.AddDictionary(dictionary, CultureInfo.CurrentCulture) radSpellChecker1.SpellCheckMode = SpellCheckMode.AllAtOnce End Sub Private Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click Me.radSpellChecker1.Check(Me.radTextBox1) End Sub End Class
Add support for case sensitivity search in the suggested elements.
One should be able to change the color of the RadTextBox text when it is disabled.
1. Add a RadMaskedEditBox and a RadCheckbox to your form. 2. Add ToggleStateChanged event to the RadCheckbox. 3. Use the following code: private void radCheckBox1_ToggleStateChanged(object sender, StateChangedEventArgs args) { if (args.ToggleState == Telerik.WinControls.Enumerations.ToggleState.On) { radMaskedEditBox1.Mask = "^[0-9]{5}$"; radMaskedEditBox1.MaskType = MaskType.Regex; } else if (args.ToggleState == Telerik.WinControls.Enumerations.ToggleState.Off) { radMaskedEditBox1.Mask = ""; radMaskedEditBox1.MaskType = MaskType.None; } } 4. Start the application 5. Check and uncheck the checkbox (now ToggleStateChanged event was fired) 6. Type some letters to the RadMaskedEditBox (e.g. "aaa") 7. Press tab Workaround: RegexMaskTextBoxProvider provider; private void radCheckBox1_ToggleStateChanged(object sender, Telerik.WinControls.UI.StateChangedEventArgs args) { if (args.ToggleState == Telerik.WinControls.Enumerations.ToggleState.On) { radMaskedEditBox1 = new RadMaskedEditBox(); radMaskedEditBox1.Mask = "^[0-9]{5}$"; radMaskedEditBox1.MaskType = MaskType.Regex; radMaskedEditBox1.MaskedEditBoxElement.TextBoxItem.HostedControl.Leave += HostedControl_Leave; provider = (RegexMaskTextBoxProvider) radMaskedEditBox1.MaskedEditBoxElement.Provider; } else if (args.ToggleState == Telerik.WinControls.Enumerations.ToggleState.Off) { radMaskedEditBox1.MaskedEditBoxElement.Mask = ""; radMaskedEditBox1.MaskType = MaskType.None; } } private void HostedControl_Leave(object sender, EventArgs e) { if (radMaskedEditBox1.MaskType == MaskType.None && provider != null) { provider.GetType().GetField("mask", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance).SetValue(provider, "*"); } }
There should be a TextAlign property at RadMaskedEditBox contorl level
To reproduce: public Form1() { InitializeComponent(); this.radMaskedEditBox1.Mask = "9999999999"; this.radMaskedEditBox1.MaskType = Telerik.WinControls.UI.MaskType.Standard; this.radMaskedEditBox1.PromptChar = Convert.ToChar(" "); } private void radButton1_Click(object sender, EventArgs e) { this.radMaskedEditBox1.Clear(); this.radLabel1.Text = "Value = " + this.radMaskedEditBox1.Value + Environment.NewLine + "Text = " + this.radMaskedEditBox1.Text; } Workaround: set the Value to null as well.
RadMaskedEditBox/RadDateTimePicker/RadTimePicker does not support milliseconds editing.
Users cannot edit the A/P symbols with CustomMask set to "hh:mm:sst" or "hh:mm:sstt"
To reproduce: - Set the provider to FreeFormDateTimeProvider - Bind the control to a value. - Clear the date and tab out of the control. Workaround: Seth the value in the ParsingDateTime event handler: if (e.InputString == "") { this.SetToNullValue(); }
To reproduce: - select the whole date and press delete. - the value should be cleared at this point not when the control loses the focus. Workaround: Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load AddHandler RadDateTimePicker1.KeyDown, AddressOf KeyDown_EventHandler End Sub Private Sub KeyDown_EventHandler(sender As Object, e As KeyEventArgs) If e.KeyData = Keys.Delete Then e.Handled = True RadDateTimePicker1.SetToNullValue() End If End Sub
Select a date from RadDateTimePicker using the calendar dropdown. Now type another date in the textbox to make a new selection. Open the drop-down and you will see that there are two dates 'selected'. The issue occurs, because when you select from the calendar, you set the cell to Focused.Selected. When you then type a date in the textbox, you change the Focused cell, but the selection on the previous cell remains. So, you end up with two 'selected' cells. The workaround is to clear the selection on opening the dropdown: void radDateTimePicker1_Opening(object sender, CancelEventArgs e) { calendar.SelectedDates.Clear(); }
The KeyDown event is not being fired when the user starts entering text in RadSpinEditor. Currently, the developer should subscribe to the KeyDown event of the TextBoxItem
To reproduce: this.radTextBoxControl1.Text = "dog and blue glue"; this.radTextBoxControl1.Size = new Size(50, 65); this.radTextBoxControl1.Multiline = true; Workaround: use RadTextBox.
When the Anchor of RadTextBox is set to (Left, Top, Right) and Multiline is true, the Height of RadTextBox becomes equal to 0. This is valid only for Windows XP.