WPF弹出窗口和按钮的工具提示问题

时间:2017-09-28 07:42:00

标签: .net wpf button popup tooltip

我正在开发一个WPF C#应用程序,我需要创建一个包含按钮的弹出窗口,对于该按钮,我需要定义一个工具提示。

问题是,当我将鼠标悬停在按钮上时,工具提示会出现,但是当我移开鼠标时,工具提示不会立即消失,大约需要5秒才能消失。

在代码段下方:

        <ToggleButton Name="PART_Button"
                      DockPanel.Dock="Right"
                      Width="20"
                      Height="20"
                      HorizontalAlignment="Center"
                      VerticalAlignment="Center"
                      Margin="0,0,0,0"
                      IsChecked="{Binding ElementName=PART_Popup, 
                      Path=IsOpen, Mode=OneWay}">
        </ToggleButton>

        <Popup IsOpen="{Binding ElementName=PART_Button, Path=IsChecked}"
               PlacementTarget="{Binding ElementName=PART_Button}"
               StaysOpen="False">

            <Button x:Name="PART_MinButton"
                    Content="BOT">

                <Button.ToolTip>
                    <ToolTip Placement="Bottom"
                             Content="Hello !!" />                       
                </Button.ToolTip>

            </Button>

        </Popup>

我有一个线索,所以当我删除StaysOpen =&#34; False&#34;时,工具提示适用于内部按钮,当我移开鼠标时它会立即消失,但是当我设置StaysOpen = &#34;假&#34;问题开始了。

有人知道我该如何解决这个问题?我陷入困境并且没有想法。

感谢。

1 个答案:

答案 0 :(得分:0)

  

有人知道我该如何解决这个问题?

您可以处理MouseLeave的{​​{1}}事件。

Button
<Popup IsOpen="{Binding ElementName=PART_Button, Path=IsChecked}"
               PlacementTarget="{Binding ElementName=PART_Button}"
               StaysOpen="False">
    <Button x:Name="PART_MinButton"
                    Content="BOT" MouseLeave="PART_MinButton_MouseLeave">
        <Button.ToolTip>
            <ToolTip Placement="Bottom" IsOpen="False"
                     Content="Hello !!" />
        </Button.ToolTip>
    </Button>
</Popup>