如何在控件聚焦时不断显示工具提示?

时间:2011-01-06 21:07:18

标签: c# .net wpf binding tooltip

如何在控件聚焦时不断显示工具提示?我尝试了很多东西,似乎没什么用。现在我有以下内容:

    <TextBox x:Name="textBox" Width="200">
        <TextBox.ToolTip>
            <ToolTip StaysOpen="{Binding IsKeyboardFocused, ElementName=textBox}" IsOpen="{Binding IsKeyboardFocused, ElementName=textBox}">
                Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
            </ToolTip>
        </TextBox.ToolTip>
    </TextBox>

它似乎应该非常简单,但事实并非如此。为什么不?我将工具提示的IsOpen属性绑定到文本框的IsKeyboardFocused属性。因此,它应在工具提示聚焦时显示。为什么不呢?

1 个答案:

答案 0 :(得分:12)

您可以使用Popup代替ToolTip,如下所示:

<Grid>
    <StackPanel>
        <TextBox x:Name="textBox1" Width="200" Height="20"/>
        <TextBox x:Name="textBox2" Width="200" Height="20"/>
    </StackPanel>
    <Popup PlacementTarget="{Binding ElementName=textBox1}" IsOpen="{Binding IsKeyboardFocused, ElementName=textBox1, Mode=OneWay}">
        <TextBlock Background="White">
            <TextBlock.Text>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</TextBlock.Text>
        </TextBlock>
    </Popup>
</Grid>

然后将其设计为工具提示。