How to reproduce: public partial class Form1 : Form { RadDateTimePicker dateTimePicker; public Form1() { InitializeComponent(); this.dateTimePicker = new RadDateTimePicker(); this.dateTimePicker.DateTimePickerElement.Calendar.HeaderNavigationMode = HeaderNavigationMode.Zoom; this.Controls.Add(this.dateTimePicker); } } Workaround: public partial class Form1 : Form { RadDateTimePicker dateTimePicker; public Form1() { InitializeComponent(); this.dateTimePicker = new RadDateTimePicker(); this.dateTimePicker.DateTimePickerElement.Calendar.PropertyChanged += Calendar_PropertyChanged; this.dateTimePicker.DateTimePickerElement.Calendar.HeaderNavigationMode = HeaderNavigationMode.Zoom; this.Controls.Add(this.dateTimePicker); } private void Calendar_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) { if (e.PropertyName == "FocusedDate") { int year = this.dateTimePicker.DateTimePickerElement.Calendar.FocusedDate.Year; if (year <= this.dateTimePicker.MinDate.Year) { this.dateTimePicker.DateTimePickerElement.Calendar.HeaderNavigationMode = HeaderNavigationMode.None; } else { this.dateTimePicker.DateTimePickerElement.Calendar.HeaderNavigationMode = HeaderNavigationMode.Zoom; } } } }
To reproduce: please refer to the attached sample project and gif file. Workaround: this.radTextBox1.MinimumSize = new System.Drawing.Size(0, 25); or Use RadTextBoxControl
To reproduce: run the attached project, enter some text in the upper RichTextBox and use the buttons to style parts of the text. Click the Save button and you will notice that after correcting the words, the style is not preserved. Workaround: use RadRichTextEditor which has a built-in spell checking functionality: http://docs.telerik.com/devtools/winforms/richtexteditor/features/spellcheck
How to reproduce: this.radMaskedEditBox1.Font = new System.Drawing.Font("Segoe UI", 20F); this.radMaskedEditBox1.MaskType = Telerik.WinControls.UI.MaskType.Standard; this.radMaskedEditBox1.Mask = "#####-######"; this.radMaskedEditBox1.Value = "47997006886"; Workaround: this.radMaskedEditBox1.Font = new System.Drawing.Font("Segoe UI", 20F); this.radMaskedEditBox1.MaskType = Telerik.WinControls.UI.MaskType.Standard; this.radMaskedEditBox1.Mask = "#####-######"; this.radMaskedEditBox1.Text = "47997006886";
Workaround: use simple data binding with the editor and its Text property this.radCalculatorDropDown1.CalculatorElement.EditorContentElement.TextBoxItem.DataBindings.Add("Text", testObject, "TestValue", false, DataSourceUpdateMode.OnPropertyChanged);
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); }
To reproduce: - Add RichTextBox and type two words each on a separate line. - Perform spell check using the following code: radSpellChecker1.SpellCheckMode = SpellCheckMode.WordByWord; radSpellChecker1.Check(richTextBox1); The result is shown on the attached image.
How to reproduce: 1. Install Telerik Controls (version: 2016.3.1024) 2. Launch Visual studio. Create Windows application project. 3. Drop RadPopupContainer from the toolbox on to the windows form. Save the form. 4. Mouse click on the control on design canvas to select RadScrollablePanelContainer panel. 5. Now click on smart tag of RadScrollablePanelContainer panel and select "Undock in parent container" option. 6. Now separate RadScrollablePanelContainer panel by moving it to some location on the form. Save the form. 7. Try to move RadPopupContainer. Observe that it does not allow to move. 8. Click on the smart tag of RadScrollablePanelContainer panel and select "Dock in parent" option. Observe that the RadScrollablePanelContainer panel is not docked into the RadPopupContainer control.
To reproduce: this.radDateTimePicker1.MinDate = DateTime.Now; this.radDateTimePicker1.MaxDate = DateTime.Now; Please refer to the attached screenshots. Although the user is not allowed to change the selection, the future dates are not grayed out as the dates before the MinDate. Workaround: public RadForm1() { InitializeComponent(); this.radDateTimePicker1.MinDate = DateTime.Now; this.radDateTimePicker1.MaxDate = DateTime.Now; RadDateTimePickerCalendar calendarBehavior = this.radDateTimePicker1.DateTimePickerElement.GetCurrentBehavior() as RadDateTimePickerCalendar; calendarBehavior.Calendar.ElementRender += Calendar_ElementRender; } private void Calendar_ElementRender(object sender, RenderElementEventArgs e) { if (e.Day.Date > this.radDateTimePicker1.MaxDate.Date || e.Day.Date < this.radDateTimePicker1.MinDate.Date) { e.Element.Enabled = false; } else { e.Element.Enabled = true; } }
To reproduce: 1) Create RAD FORM (Project) 2) Add a TableLayoutPanel 3) In 1 cell add TextBox and change the font... it expands. 4) In cell 2 add a RadTextBox and change the font. The control is not resized. In addition RatTextBox has correct size at runtime.
The value set to the last spin editor is overridden with its previous value. How to reproduce: check the attached videos Workaround: public partial class Form1 : Form { public Form1() { InitializeComponent(); this.radColorBox1.ValueChanging += radColorBox1_ValueChanging; ((RadForm)this.radColorBox1.ColorBoxElement.ColorDialog.ColorDialogForm).FormClosing += Form1_FormClosing; } bool cancelValueChange; Telerik.WinControls.UI.RadColorPicker.ProfessionalColors professionalColors; private void Form1_FormClosing(object sender, FormClosingEventArgs e) { Control colorSelector = this.radColorBox1.ColorBoxElement.ColorDialog.ColorDialogForm.RadColorSelector; RadPageView pageView = colorSelector.Controls[3] as RadPageView; if (pageView.SelectedPage.TabIndex == 3) { cancelValueChange = true; professionalColors = pageView.Pages[3].Controls[0] as Telerik.WinControls.UI.RadColorPicker.ProfessionalColors; } else { professionalColors = null; } } private void radColorBox1_ValueChanging(object sender, Telerik.WinControls.UI.ValueChangingEventArgs e) { if (cancelValueChange && professionalColors != null) { e.Cancel = true; RadSpinEditor alphaSpinEditor = professionalColors.Controls[12] as RadSpinEditor; RadSpinEditor redSpinEditor = professionalColors.Controls[15] as RadSpinEditor; RadSpinEditor greenSpinEditor = professionalColors.Controls[11] as RadSpinEditor; RadSpinEditor blueSpinEditor = professionalColors.Controls[7] as RadSpinEditor; cancelValueChange = false; this.radColorBox1.Value = Color.FromArgb((int)alphaSpinEditor.Value, (int)redSpinEditor.Value, (int)greenSpinEditor.Value, (int)blueSpinEditor.Value); } } }
To reproduce: add a RadMaskedEditBox and use the following code: Sub New() InitializeComponent() Me.RadMaskedEditBox1.MaskType = Telerik.WinControls.UI.MaskType.Numeric Me.RadMaskedEditBox1.Mask = "N1" Dim item As Item = New Item(Nothing, "Item1") RadMaskedEditBox1.DataBindings.Add("Value", item, "StockTypeId", True, DataSourceUpdateMode.OnPropertyChanged) End Sub Public Class Item Private _stockId As Nullable(Of Integer) Public Sub New(value As Nullable(Of Integer), name As String) Me._stockId = value End Sub Public Property StockTypeId() As Nullable(Of Integer) Get Return _stockId End Get Set(ByVal value As Nullable(Of Integer)) _stockId = value Console.WriteLine(value) End Set End Property End Class The user is not allowed to enter a new numeric value. Wokraround: Public Class CustomNumericCharacterTextBoxProvider Inherits NumericCharacterTextBoxProvider Private owner As RadMaskedEditBoxElement Public Sub New(mask As String, culture As CultureInfo, numericType As NumericCharacterTextBoxProvider.RadNumericMaskFormatType, _ owner As RadMaskedEditBoxElement) MyBase.New(mask, culture, numericType, owner) Me.owner = owner End Sub Protected Overrides Function AllowAppendCharacters() As Boolean If owner.Text = "" AndAlso owner.Mask = "N1" Then Return True End If Return MyBase.AllowAppendCharacters() End Function End Class Public Class CustomMaskedEditBox Inherits RadMaskedEditBox Public Overrides Property ThemeClassName As String Get Return GetType(RadMaskedEditBox).FullName End Get Set(value As String) MyBase.ThemeClassName = value End Set End Property Public Sub New() MyBase.New() Me.MaskType = Telerik.WinControls.UI.MaskType.Numeric Me.Mask = "N1" Dim numericMaskProvider As NumericMaskTextBoxProvider = Me.MaskedEditBoxElement.Provider Dim fi As FieldInfo = GetType(NumericMaskTextBoxProvider).GetField("provider", BindingFlags.Instance Or BindingFlags.NonPublic) fi.SetValue(numericMaskProvider, _ New CustomNumericCharacterTextBoxProvider(numericMaskProvider.Mask, numericMaskProvider.Culture, _ NumericMaskTextBoxProvider.GetFormat(numericMaskProvider.Mask, numericMaskProvider.Culture), _ Me.MaskedEditBoxElement)) End Sub End Class
To reproduce: radMaskedEditBox1.MaskType = MaskType.Numeric; radMaskedEditBox1.Mask = "G"; Then enter 123.45 Workaround: Use "N" mask with fixed decimal places.
How to reproduce: Check also the attached video public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void radButton1_Click(object sender, EventArgs e) { this.radAutoCompleteBox1.AutoCompleteItems.Clear(); List<RadListDataItem> autoCompleteEntries = new List<RadListDataItem>(); for (int i = 0; i < 10000; i++) { autoCompleteEntries.Add(new RadListDataItem("Joe Smith", "joe@fakecompany.com")); autoCompleteEntries.Add(new RadListDataItem("Adam Petersen", "adam@qwerty.com")); autoCompleteEntries.Add(new RadListDataItem("Jack Russel", "jack@russel.nocom")); autoCompleteEntries.Add(new RadListDataItem("Daniel Finger", "daniel.pinger@gmail.com")); autoCompleteEntries.Add(new RadListDataItem("Richard Vail", "rvail@richardvail.com")); autoCompleteEntries.Add(new RadListDataItem("Sebastian Jonnson", "s.jonnson@sjonnson.com")); autoCompleteEntries.Add(new RadListDataItem("Lee Cooper", "lee.cooper@coopercoorp.com")); autoCompleteEntries.Add(new RadListDataItem("Kelvin Clain", "kclain@clainkevin.com")); autoCompleteEntries.Add(new RadListDataItem("Maria Jenson", "mjenson@mariajenson.com")); autoCompleteEntries.Add(new RadListDataItem("Chelsea Maarten", "chelsea@maarten.com")); } this.radAutoCompleteBox1.AutoCompleteItems.AddRange(autoCompleteEntries); } } Workaround: use Begin/End update block and reset the private patternText field: public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void radButton1_Click(object sender, EventArgs e) { typeof(RadTextBoxListElement).GetField("patternText", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(this.radAutoCompleteBox1.ListElement, null); this.radAutoCompleteBox1.AutoCompleteItems.Clear(); List<RadListDataItem> autoCompleteEntries = new List<RadListDataItem>(); for (int i = 0; i < 10000; i++) { autoCompleteEntries.Add(new RadListDataItem("Joe Smith", "joe@fakecompany.com")); autoCompleteEntries.Add(new RadListDataItem("Adam Petersen", "adam@qwerty.com")); autoCompleteEntries.Add(new RadListDataItem("Jack Russel", "jack@russel.nocom")); autoCompleteEntries.Add(new RadListDataItem("Daniel Finger", "daniel.pinger@gmail.com")); autoCompleteEntries.Add(new RadListDataItem("Richard Vail", "rvail@richardvail.com")); autoCompleteEntries.Add(new RadListDataItem("Sebastian Jonnson", "s.jonnson@sjonnson.com")); autoCompleteEntries.Add(new RadListDataItem("Lee Cooper", "lee.cooper@coopercoorp.com")); autoCompleteEntries.Add(new RadListDataItem("Kelvin Clain", "kclain@clainkevin.com")); autoCompleteEntries.Add(new RadListDataItem("Maria Jenson", "mjenson@mariajenson.com")); autoCompleteEntries.Add(new RadListDataItem("Chelsea Maarten", "chelsea@maarten.com")); } this.radAutoCompleteBox1.ListElement.DataLayer.ListSource.BeginUpdate(); this.radAutoCompleteBox1.AutoCompleteItems.AddRange(autoCompleteEntries); this.radAutoCompleteBox1.ListElement.DataLayer.ListSource.EndUpdate(); } }
To reproduce: this.radDateTimePicker1.ThemeName = "TelerikMetroTouch"; var calendar1 = (radDateTimePicker1.DateTimePickerElement.CurrentBehavior as RadDateTimePickerCalendar); calendar1.ShowTimePicker = true; Workaround: calendar1.Calendar.Width = 250; calendar1.DropDownMinSize = new System.Drawing.Size(500, 250);
Workaround: this.radTextBox1.TextBoxElement.Fill.BackColor = backColor; this.radTextBox1.TextBoxElement.BackColor = backColor;
Please refer to the attached screenshot. Workaround: Me.RadDateTimePicker1.DateTimePickerElement.TextBoxElement.MaxSize = New Size(0, 20)
To reproduce: - Set the mask to IP. - Change the culture to German. Workaround: Set the Culture of the RadMaskedEditBox to English.
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.