2010-04-17 57 views
4

我想在移動鼠標時顯示工具提示。 這裏是我的代碼:如何強制在WPF中顯示工具提示

private void Grid_MouseMove(object sender, MouseEventArgs e) 
     { 
      Grid grid = (Grid) sender; 
      if (e.GetPosition(grid).X < 100) 
       grid.ToolTip = e.GetPosition(grid).X.ToString(); 
      else 
       grid.ToolTip = null; 
     } 

然而,當我點擊網格工具提示消失。

有沒有辦法強制顯示工具提示?

回答

5
var oldTT = SomeElement.ToolTip as ToolTip; 
if (oldTT != null) oldTT.IsOpen = false; 
SomeElement.ToolTip = new ToolTip 
{ 
    Content = "Lalalalala", 
    IsOpen = true, 
}; 

var tt = SomeElement.ToolTip as ToolTip; 
if (tt != null) tt.IsOpen = true; 
+0

'ToolTip'在WPF只是'對象'。這段代碼可能是Winforms ToolTip。 – Gerard 2014-03-20 14:41:38

+1

@Gerard,當然.ToolTip屬性具有類似Label.Content的對象類型。但是,當您使用ToolTip類型設置值時,您可以輕鬆訪問其屬性,例如.IsOpen或Content。工具提示屬性默認綁定。 – tmt 2014-09-25 15:35:19

3

TooltipService.ShowDuration的作品,但你必須有工具提示,這樣設置的對象:

<Label ToolTipService.ShowDuration="120000" Name="lblTooltip" Content="Shows tooltip"> 
<Label.ToolTip> 
    <ToolTip> 
     <TextBlock>Hi world!</TextBlock> 
    </ToolTip> 
</Label.ToolTip>