Отображение всплывающей подсказки в центре экрана - PullRequest
1 голос
/ 01 ноября 2010

Использование сетки для отображения изображений по краям экрана.

<Image Source="...." Grid.Row="0" Grid.Column="0">
    <Image.Tooltip>
        <TextBlock>Some narrative..</TextBlock>

<TextBox Name="ToolTipText" Grid.Row="1" Grid.Column="1" />

В MouseOver Я хочу, чтобы всплывающая подсказка отображалась в TextBox, но она всегда отображается по центру изображения.

<Style TargetType="ToolTip">
    <Setter Property="PlacementTarget" 
        Value="{Binding ElementName=ToolTipText, Path=Text} />
    <Setter Property="Placement" Value="Center" />

1 Ответ

1 голос
/ 01 ноября 2010

Попробуйте это

<Grid Name="mainGrid">
    <Image Source="...." Grid.Row="0" Grid.Column="0" ToolTipService.PlacementTarget="{Binding ElementName=mainGrid}">
        <Image.ToolTip>
            <ToolTip Placement="Center">
                <TextBlock>Some narrative..</TextBlock>
            </ToolTip>
        </Image.ToolTip>
    </Image>
</Grid>

Это

ToolTipService.PlacementTarget="{Binding ElementName=mainGrid}"

Может быть заменено на

ToolTipService.PlacementTarget="{Binding RelativeSource={RelativeSource AncestorType={x:Type Grid}}}"
...