2013-05-09 47 views
-5

我渲染窗口窗體上的按鈕,其中有一些設置爲enable = false。 但我希望工具提示仍然適用於每個按鈕,即使它不可用。我怎麼能這樣做?工具提示無法使用設置的按鈕enable = false

請幫忙。

+2

您需要將代碼粘貼與問題,以便您能很快幫助 – ErrorNotFoundException 2013-05-09 12:45:15

+0

我想這是由設計 – 2013-05-09 12:47:00

+0

我只是添加按鈕,我的形式和使用oTip.SetToolTip( oButton,showText); – user1412944 2013-05-09 12:48:00

回答

0

您可以攔截MouseMove事件,然後以編程方式顯示工具提示。 toolTip1是您的形式提示明顯

private bool toolTipShown = false; 
private void Control_MouseMove(object sender, MouseEventArgs e) 
{ 
    var parent = sender as Control; 
    if (parent == null) 
    { 
     return; 
    } 
    var ctrl = parent.GetChildAtPoint(e.Location); 
    if (ctrl != null) 
    { 
     if (ctrl.Visible && toolTip1.Tag == null) 
     { 
      if (!toolTipShown) 
      { 
       var tipstring = toolTip1.GetToolTip(ctrl); 
       toolTip1.Show(tipstring.Trim(), ctrl, ctrl.Width/2, ctrl.Height/2); 
       toolTip1.Tag = ctrl; 
       toolTipShown = true; 
      } 
     } 
    } 
    else 
    { 
     ctrl = toolTip1.Tag as Control; 
     if (ctrl != null) 
     { 
      toolTip1.Hide(ctrl); 
      toolTip1.Tag = null; 
      toolTipShown = false; 
     } 
    } 
}