Use attached video and project to reproduce. Workaround: Disable the animations: btnAdd.DropDownButtonElement.DropDownMenu.AnimationEnabled = false; //or ThemeResolutionService.AllowAnimations = false;
How to reproduce: check the attached video Workaround: public partial class RadForm1 : Telerik.WinControls.UI.RadForm { public RadForm1() { InitializeComponent(); ThemeResolutionService.AllowAnimations = false; this.radToggleSwitch1.AllowAnimation = false; } }
To reproduce: apply the Window8 theme to the entire application containing a RadButton and a RadCheckBox. Change the color of RadButton to Green and handle the RadCheckBox.ToggleStateChanged event in order to enable/disable the button. You will notice that after disabling once the button enabling it again, the ButtonFillElement.NumberOfColors property is set to 1 and gradient color becomes solid. Please refer to the attached sample project and gif file. Workaround: int numberOfColors = 0; private void radCheckBox1_ToggleStateChanged(object sender, Telerik.WinControls.UI.StateChangedEventArgs args) { if (args.ToggleState == Telerik.WinControls.Enumerations.ToggleState.On) { this.radButton1.Enabled = true; this.radButton1.ButtonElement.ButtonFillElement.NumberOfColors = numberOfColors; } else { numberOfColors = this.radButton1.ButtonElement.ButtonFillElement.NumberOfColors; this.radButton1.Enabled = false; } }
Please refer to the attached sample project and gif file. The text gets clipped sometimes when resizing the form. It may become even blurry. This problem is observed with the MS Form, but it is not reproducible with RadForm. Workaround: use a RadForm UPDATED: a second project is attached (00393359CheckBoxDisabledUPDATED.zip). The MissingCheckBoxesText.gif illustrates the incorrect behavior. In this case, the UseCompatibleTextRendering property is set to false. Workaround for the second case: instead of setting the RadCheckBox.Enabled property to false, disabled the check primitive and make the text gray as follows: private void radButton1_Click(object sender, EventArgs e) { for (int i = 0; i < 30; i++) { RadCheckBox cb = new RadCheckBox(); cb.Text = "RadCheckBox " + i; cb.Location = new Point(10, i * 30); cb.ButtonElement.CheckMarkPrimitive .Enabled = false; cb.ButtonElement.TextElement.ForeColor = Color.Gray; cb.ButtonElement.ShouldHandleMouseInput = false; cb.UseCompatibleTextRendering = false; this.Controls.Add(cb); } }
The same case is valid for RadToggleButton as well. To reproduce: use the following custom RadCheckBox. You will notice that the ToggleStateChanging, ToggleStateChanged, PropertyChanged, CheckStateChanging, CheckStateChanged won't fire anymore: public class MyCheckBoxElement : RadCheckBoxElement { protected override Type ThemeEffectiveType { get { return typeof(RadCheckBoxElement); } } } public class MyCheckBox : RadCheckBox { protected override RadButtonElement CreateButtonElement() { return new MyCheckBoxElement(); } public override string ThemeClassName { get { return typeof(RadCheckBox).FullName; } } } Workaround: public class MyCheckBoxElement : RadCheckBoxElement { protected override void OnKeyDown(KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { return; } base.OnKeyDown(e); } protected override Type ThemeEffectiveType { get { return typeof(RadCheckBoxElement); } } } public class MyCheckBox : RadCheckBox { protected override RadButtonElement CreateButtonElement() { MyCheckBoxElement checkBox = new MyCheckBoxElement(); checkBox.ToggleStateChanging += new StateChangingEventHandler(ButtonElement_ToggleStateChanging); checkBox.ToggleStateChanged += new StateChangedEventHandler(ButtonElement_ToggleStateChanged); checkBox.PropertyChanged += new PropertyChangedEventHandler(res_PropertyChanged); checkBox.CheckStateChanging += new CheckStateChangingEventHandler(res_CheckStateChanging); checkBox.CheckStateChanged += new EventHandler(res_CheckStateChanged); return checkBox; } private void res_CheckStateChanged(object sender, EventArgs e) { base.OnCheckStateChanged(e); } private void res_CheckStateChanging(object sender, CheckStateChangingEventArgs args) { base.OnCheckStateChanging(args); } private void res_PropertyChanged(object sender, PropertyChangedEventArgs e) { if (e.PropertyName == "IsChecked") { base.OnNotifyPropertyChanged("IsChecked"); } } private void ButtonElement_ToggleStateChanged(object sender, StateChangedEventArgs args) { base.OnToggleStateChanged(args); base.OnNotifyPropertyChanged("Checked"); base.OnNotifyPropertyChanged("CheckState"); base.OnNotifyPropertyChanged("ToggleState"); } private void ButtonElement_ToggleStateChanging(object sender, StateChangingEventArgs args) { base.OnToggleStateChanging(args); } public override string ThemeClassName { get { return typeof(RadCheckBox).FullName; } } }
When you customize a theme for RadSplitButton, you are not able to change the color of the action button element when it is pressed and the drop down is not opened. Workaround: this.radSplitButtonElement2.ActionButton.MouseDown+=ActionButton_MouseDown; this.radSplitButtonElement2.ActionButton.MouseUp+=ActionButton_MouseUp; private void ActionButton_MouseUp(object sender, MouseEventArgs e) { this.radSplitButtonElement2.ActionButton.ButtonFillElement.ResetValue(LightVisualElement.BackColorProperty, ValueResetFlags.Local); this.radSplitButtonElement2.ActionButton.ButtonFillElement.ResetValue(LightVisualElement.GradientStyleProperty, ValueResetFlags.Local); } private void ActionButton_MouseDown(object sender, MouseEventArgs e) { this.radSplitButtonElement2.ActionButton.ButtonFillElement.BackColor = Color.Red; this.radSplitButtonElement2.ActionButton.ButtonFillElement.GradientStyle = GradientStyles.Solid; }
To reproduce: - Add SplitButton to a ribbon bar and set its image. - Disable the button. Workaround: this.radSplitButtonElement1.UseDefaultDisabledPaint = true;
Workaround: public class MyRadToggleSwith : RadToggleSwitch { public override string ThemeClassName { get { return typeof(RadToggleSwitch).FullName; } } protected override void OnGotFocus(EventArgs e) { base.OnGotFocus(e); this.ToggleSwitchElement.Focus(); } } or simply put focus to the element when the control receives the focus: private void radToggleSwitch_GotFocus(object sender, EventArgs e) { this.radToggleSwitch1.ToggleSwitchElement.Focus(); }
To reproduce: - Create a dpi aware application and add a checkbox to it. - Change your DPI setting to 200% and start the application. - The checkmark is not scaled only the text is. Workaround: this.radCheckBox2.ButtonElement.CheckMarkPrimitive.CheckElement.UseFixedCheckSize = false; this.radCheckBox2.ButtonElement.CheckMarkPrimitive.CheckElement.MinSize = new Size(100, 100);
The following themes have differences: ControlDefault, Office2010Silver, Office2013Dark, Office2013Light, TelerikMetro, TelerikMetroBlue, TelerikMetroTouch To reproduce: this.radSplitButton1.DropDownButtonElement.ArrowButton.Enabled = false; this.radSplitButtonElement1.ArrowButton.Enabled = false;
To reproduce: - Set the IsThreeState to true. - Set the state to Indeterminate. - Disable the checkbox. - Set the state to checked. - The state is not changed. This is working fine if another state is used before disabling the control. Workaround: - Always set the state before you disable the control.
when I use office2007blacktheme, the font of radbutton doesn't work.
To reproduce: - Set the shape at design time with the shape editor. - Start the application or restart the designer. Workaround: Set the shape in code behind.
To reproduce: - Add 3 radio buttons to a user control. - Set the ToggleState of the second radio button to On. - Show the user control in a DockWindow. - You will notice that the first toggle button is selected. Workaround: Set the toggle state after the window is added to the RadDock void radDock1_DockWindowAdded(object sender, Telerik.WinControls.UI.Docking.DockWindowEventArgs e) { if (e.DockWindow.Text == "UserControl11") { UserControl1 uc1 = e.DockWindow.Controls[0] as UserControl1; ((RadRadioButton)uc1.Controls[1]).ToggleState = Telerik.WinControls.Enumerations.ToggleState.On; } }
To reproduce: 1. Open the Demo application >> Button example. 2. Change the theme to TelerikMetroBlue. 3. Click with the right/middle mouse button and you will notice that the button clicked states is indicated. Workaround: remove the MouseDown state in Visual Style Builder for the fill element as it is illustrated on the attached screenshot.
Please look at the attached screenshot. Workaround: RadRadiomark radioMark = this.radRadioButton1.ButtonElement.Children[1].Children.Last() as RadRadiomark; radioMark.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
To reproduce: public class RadForm1 { private RadButtonElement btnHelp; private void RadForm1_Load(object sender, EventArgs e) { btnHelp = new RadImageButtonElement(); btnHelp.AutoSize = true; btnHelp.ShowBorder = false; btnHelp.Image = My.Resources.Resources.help; btnHelp.DisplayStyle = DisplayStyle.Image; btnHelp.ButtonFillElement.Visibility = ElementVisibility.Hidden; btnHelp.ClickMode = ClickMode.Release; btnHelp.Click += btnHelp_Click; this.FormElement.TitleBar.SystemButtons.Children.Insert(0, btnHelp); } private void btnHelp_Click(object sender, EventArgs e) { Process.Start("http://www.telerik.com"); } public RadForm1() { Load += RadForm1_Load; } } Workaround: Use the Press ClikMode.
To reproduce: - Add some toggle buttons with image to a ribbon bar. - Toggle some of them and the disable all the buttons. - You will notice that the fill is incorrect and the image is not gray. Workaround: - Changed the UseDefaultDiabledState property for the toggle button element. - Set transparent fill for the disabled state of the fill primitive.