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;
}
}