To reproduce: RadColorDialog dialog = new RadColorDialog(); dialog.ColorDialogForm.ColorChanged Workaround: ((RadColorSelector)dialog.ColorDialogForm.RadColorSelector).OkButtonClicked += Form1_OkButtonClicked; //or ((RadColorSelector)dialog.ColorDialogForm.RadColorSelector).ColorChanged+= ColorDialogForm_ColorChanged;
To reproduce: radTimePicker1.Enabled = false; radTimePicker1.Enabled = true; WORKAROUND: void radTimePicker1_EnabledChanged(object sender, EventArgs e) { if (radTimePicker1.Enabled) { radTimePicker1.TimePickerElement.ForeColor = Color.Black; } }
To reproduce: if (e.KeyData == Keys.Back) { radDateTimePicker1.SetToNullValue(); e.Handled = true; } Workaround: void radDateTimePicker1_KeyUp(object sender, KeyEventArgs e) { if (e.KeyData == Keys.Back) { radDateTimePicker1.SetToNullValue(); } } Resolution: Users should handle also KeyPress event (and KeyDown event) because the keys.Back is processed on KeyPress : void radDateTimePicker1_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == '\b') { this.radDateTimePicker1.SetToNullValue(); e.Handled = true; } }
To reproduce: RadTextBox txtAction = new Telerik.WinControls.UI.RadTextBox(); txtAction.Dock = System.Windows.Forms.DockStyle.Fill; this.Controls.Add(txtAction); Workaround: void txtAction_Resize(object sender, EventArgs e) { txtAction.TextBoxElement.InvalidateMeasure(true); txtAction.TextBoxElement.UpdateLayout(); }
To reproduce: Add a grid with a DateTime column and change its editor to GridTimePickerEditor Run the project and on a row with no value, open the editor, press Up arrow key, change to AM and then change the hour to 12 Open the popup and click the left key to change the AM/PM Work around: void radGridView1_EditorRequired(object sender, Telerik.WinControls.UI.EditorRequiredEventArgs e) { if (e.EditorType == typeof(RadDateTimeEditor)) { if (radGridView1.CurrentColumn.Name == "TimeColumn") { GridTimePickerEditor editor = new GridTimePickerEditor(); e.Editor = editor; RadTimePickerElement element = editor.EditorElement as RadTimePickerElement; element.PopupContentElement.HoursTable.TableHeader.LeftArrow.MouseDown -= new MouseEventHandler(LeftArrow_MouseDown); element.PopupContentElement.HoursTable.TableHeader.LeftArrow.MouseDown += new MouseEventHandler(LeftArrow_MouseDown); } } } void LeftArrow_MouseDown(object sender, MouseEventArgs e) { RadTimePickerElement element = ((GridTimePickerEditor)this.radGridView1.ActiveEditor).EditorElement as RadTimePickerElement; DateTime time = (DateTime)element.Value; element.Value = time.AddYears(-2); }
IMPROVE. RadSpellChecker - add ability to modify the €œThe spelling check is completed€ text in the message box.
All controls (i.e. RadGridView, RadPropertyGrid, etc.), which use textbox editor, containing HostedTextBoxBase descendant, can be spelled by the RadSpellChecker. But the red underline is not displayed entirely. The inside hosted text box should have a bigger height.
When you drag a RadDateTimePicker from the Toolbox and drop it onto the form, the TabStop property is false by default. If you change it in the Properties grid to true and save the form, try to open the form designer again. As a result the TabStop property is set to false as if no changes have been performed.
To reproduce: this.radTextBox1.Text = "sample"; this.radTextBox1.TextBoxElement.BackColor = Color.Red; this.radTextBox1.TextBoxElement.UseDefaultDisabledPaint = false; this.radTextBox1.TextBoxElement.Enabled = false; In previous version (e.g. Q1 2014 SP1) the TextBoxElement is not rendered red.
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
To reproduce: this.radTextBoxControl1.Text = "dog and blue glue"; this.radTextBoxControl1.Size = new Size(50, 65); this.radTextBoxControl1.Multiline = true; Workaround: use RadTextBox.
To reproduce: public Form1() { InitializeComponent(); AddDateTime(); radDateTimePicker1.ValueChanged += radDateTimePicker1_ValueChanged; radDateTimePicker1.Format = DateTimePickerFormat.Custom; radDateTimePicker1.CustomFormat = "dd/MM/yyyy HH:mm"; AddButton(); } void radDateTimePicker1_ValueChanged(object sender, EventArgs e) { if (radDateTimePicker1.Value.Date.Hour == 0) { var date = radDateTimePicker1.Value.Date; radDateTimePicker1.Value = new DateTime(date.Year, date.Month, date.Day, 23, 59, 0); } } Workaround: Refocus the control and the value will be updated.
The RadTokenizedTextItem should reference the data items as well.
To reproduce: - Change the culture of the RadDateTime picker to Russian. - Change the month to August and select the month part when the drop down is closed. Workaround: radDateTimePicker1.Format = DateTimePickerFormat.Custom; radDateTimePicker1.CustomFormat = "dd/MMM/yyyy";
To reproduce: - Set the mask to numeric. - Change the value and check the Modified property. - Workaround: string oldValue = string.Empty; void radMaskedEditBox1_LostFocus(object sender, EventArgs e) { if (oldValue != radMaskedEditBox1.Text) { radMaskedEditBox1.Modified = true; } else { radMaskedEditBox1.Modified = false; } oldValue = radMaskedEditBox1.Text; }
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: 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.
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, "*"); } }
To reproduce: - Disable the control. - The text box has a white background. - Workaround: Set the back color of the RadTimeMaskedEditBoxElement in for the disabled state in Visual Style Builder.