To reproduce:
1. Add HelpProvider on the form.
2. Add RadButton(or any other RadControl).
3. Use the following code:
this.helpProvider1.SetHelpString(this.radButton1, "RadButton help message.");
this.MaximizeBox = false;
this.MinimizeBox = false;
this.HelpButton = true;
4. Run the form, click form's help button and then click the button. - Help dialog is shown and instantly closed.
Workaround:
Subscribe to the control's HelpRequested event and show a tooltip.
this.helpProvider1.SetShowHelp(this.radButton1, false);
this.radButton1.HelpRequested += Control_HelpRequested;
private void Control_HelpRequested(object sender, HelpEventArgs hlpevent)
{
Control control = sender as Control;
if (control == null)
{
return;
}
hlpevent.Handled = true;
RadToolTip tip = new RadToolTip();
tip.Show(this.helpProvider1.GetHelpString(control), 3000);
}