RadSpellChecker is also using MEF to load the default dictionary: https://docs.microsoft.com/en-us/dotnet/framework/mef/attributed-programming-model-overview-mef If MEF fails the dictionary will not load and the control will not spell check.
The suggestion must popup after every word. There should be an option for positioning the drop down inside the textbox.
Windows TextBox - OSK perfect Telerik RadTextBox - OSK perfect Telerik RadTextBoxControl - OSK doesn't work Telerik RadDropDownList - OSK doesn't work Telerik AutoCompleteBox - OSK doesn't work This should work for all controls that have text input.
Use attached to reproduce. Workaround: RadTextBox tb = new RadTextBox(); tb.Font = new Font(Font.Name, 12F, FontStyle.Bold); tb.MaxLength = 200; tb.Name = "textBox1"; tb.Text = "<Required>"; tb.Location = new Point(49, 7); var pixels = tb.Font.SizeInPoints * 96 / 72; tb.TextBoxElement.TextBoxItem.HostedControl.MinimumSize = new Size(0, (int)pixels + 6);
To reproduce: this.radDateTimePicker1.DateTimePickerElement.TextBoxElement.MaskType = MaskType.FreeFormDateTime; And try pasting a date, or some free text.
Use attached to reproduce. Workaround: Use RadTextBox.
To reproduce: set this.radMaskedEditBox1.MaskType = Telerik.WinControls.UI.MaskType.IP; and try to enter '300' for the first part of the IP address. A message pops up explaining that the value is outside the valid range. This message can't be changed. It should allow localizing. In addition, a RadMessageBox should be shown as well.
To reproduce: - Open the demo application. - Open the PropertyGrid -> FirstLook example. - Open the color dialog editor multiple times.
We should also add padding to the RadTimePicker Workaround: this.radSpinEditor1.SpinElement.Padding = new Padding(2, 0, 0, 0); this.radTimePicker1.TimePickerElement.Padding = new Padding(2, 0, 0, 0);
To reproduce: - Open the attached project. - Click the day part and press N - Click the hour part and press N - PM is changed to AM Workaround: public RadForm1() { InitializeComponent(); radDateTimePicker1.Format = DateTimePickerFormat.Custom; radDateTimePicker1.CustomFormat = @"yyyy/MM/dd hh:mm:ss tt"; radDateTimePicker1.DateTimePickerElement.TextBoxElement.TextBoxItem.KeyPress += TextBoxItem_KeyPress; } private void TextBoxItem_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == 'n') { e.Handled = true; radDateTimePicker1.Value = DateTime.Now; } }
Use the following code: public RadForm1() { InitializeComponent(); radMaskedEditBox1.MaskType = Telerik.WinControls.UI.MaskType.Numeric; radMaskedEditBox1.Mask = "d0"; radMaskedEditBox1.EnableNullValueInput = true; radMaskedEditBox1.TextChanged += RadMaskedEditBox1_TextChanged; radMaskedEditBox1.ValueChanged += RadMaskedEditBox1_ValueChanged; radMaskedEditBox1.Value = null; } private void RadMaskedEditBox1_ValueChanged(object sender, EventArgs e) { Console.WriteLine(radMaskedEditBox1.Value); } - Type "1", you will notice that the value is still null. - Type "2", the value is now correct. Workaround: private void RadMaskedEditBox1_ValueChanged(object sender, EventArgs e) { if (radMaskedEditBox1.Text != "" ) { var provider = radMaskedEditBox1.MaskedEditBoxElement.Provider; Console.WriteLine(provider.Value); } else { Console.WriteLine(radMaskedEditBox1.Value); } } er.Value);
How to reproduce: The spell checker`s AutoSpellCheckControl property must not be set. Add a ContextMenuStrip with several items and use it with a standard text box. Then perform a spell check with the RadSpellChecker control, e.g. like this: Me.RadSpellChecker1.Check(Me.TextBox1) Then right-click in the text box, the context menu will not be shown. Workaround: use RadContextMenu https://docs.telerik.com/devtools/winforms/menus/contextmenu/context-menus
To reproduce: - Set the DropDownSizingMode to None - Show the popup several times. - Each time the height is increased. Workaround: var popup = radPopupEditor1.PopupEditorElement.PopupForm as RadPopupContainerForm; popup.SizingGrip.MinSize = new Size(0, 0);
See attached video to reproduce.
To reproduce: - Use the Fluent theme with RadSpinEditor on a HDPI monitor. Workaround: var borderPrimitive = radSpinEditor1.SpinElement.Children[1] as BorderPrimitive; borderPrimitive.BottomWidth = 2;
To reproduce: Add the following code: int count = 0; private void dateTimePicker1_ValueChanging(object sender, Telerik.WinControls.UI.ValueChangingEventArgs e) { if (count == 2) { e.Cancel = true; } count++; } - Select the year and press down multiple times. After some time the event is not fired any more. Workaround: class MyMaskDateTimeRpovider : MaskDateTimeProvider { public MyMaskDateTimeRpovider(string mask, CultureInfo culture, RadMaskedEditBoxElement owner) : base(mask, culture, owner) { } public override object Value { get { return base.Value; } set { typeof(MaskDateTimeProvider).GetField("oldValue", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(this, null); base.Value = value; } } }
Use attached to reproduce. 1 - In the First Text Box (the Masked Box) type 1 2 - Click the "GO" button. The text box shows 1 and the VALUE is displayed from the Edit box correctly as 1 3 - Select the 1 in the edit box and CTRL + DELETE to clear the field 4 - Click the "GO" button. The text box shows NULL and the VALUE is displayed from the Edit box correctly as NULL 5 - Highlight the text in the "Paste Me!" text box and Copy the text to Clipboard. 6 - Paste the clipboard into the Masked t Edit box 7 - Click "GO". The mask text box correctly displayed NULL however the returned VALUE is 1
How to reproduce: Set the AutoSpellCheckControl property of the spell checker and use it in a DPI-aware application on a system with an increased scaling. Type an incorrect and notice that the context menu will not be scaled. Workaround: Public Class RadForm1 Sub New() InitializeComponent() 'TextBox Me.RadSpellChecker1.AutoSpellCheckControl = Me.TextBox1 Dim dpi = NativeMethods.GetSystemDpi() Dim checker = TryCast(Me.RadSpellChecker1.GetControlSpellChecker(GetType(TextBox)), TextBoxSpellChecker) checker.DropDownMenu.PopupElement.DpiScaleChanged(New SizeF(dpi.X / 96, dpi.Y / 96)) 'RadTextBox 'Me.RadSpellChecker1.AutoSpellCheckControl = Me.RadTextBox1 'Dim dpi = NativeMethods.GetSystemDpi() 'Dim checker = TryCast(Me.RadSpellChecker1.GetControlSpellChecker(GetType(RadTextBox)), TextBoxSpellChecker) 'checker.DropDownMenu.PopupElement.DpiScaleChanged(New SizeF(dpi.X / 96, dpi.Y / 96)) End Sub End Class
Set the property to the hosted textbox instead: Me.RadSpinEditor1..SpinElement.TextBoxItem.TabStop = False or create a custom control: Public Class MyRadSpinEditor Inherits RadSpinEditor <DefaultValue(True)> Public Overloads Property TabStop As Boolean Get If Me.SpinElement.TextBoxItem IsNot Nothing Then Return Me.SpinElement.TextBoxItem.TabStop End If Return MyBase.TabStop End Get Set(ByVal value As Boolean) If Me.SpinElement.TextBoxItem IsNot Nothing Then MyBase.TabStop = False Me.SpinElement.TextBoxItem.TabStop = value Return End If MyBase.TabStop = value End Set End Property End Class