Показ пользовательской подсказки? / Всплывающее окно при парении над объектом в Silverlight

Как я могу пойти о получении подобного всплывающего окна/парения/подсказки (см. изображение ниже), когда я толплюсь или нажимаю на объект в своем приложении Silverlight?

Обновление: (добавленная щедрость)

Я ищу управление, которое может отбросить тень и показать стрелку. Я хочу как 3-4 строки данных, в которых я могу передать как свойства управления.

откройте exampe http://www.freeimagehosting.net/uploads/4a78a786fc.gif

5
задан Todd Main 21 July 2010 в 18:58
поделиться

2 ответа

Expression Blend 4 имеет такую ​​форму выноски, и к ней можно применить . Чтобы поместить текст внутрь, просто оберните текстовое поле и выноску на холсте. С этого сайта :

Expression Blend 4 теперь включает предустановки для простого создания дуг, стрелок, выносок и многоугольников. Фигуры можно легко переключать между рендерингом в стиле эскиза и в обычном стиле. Эту функцию можно найти на панели «Активы» в новой категории «Фигуры».

Я использовал выноски - очень удобные и очень похожие по использованию на Автофигуры в Office. Чтобы создать всплывающее окно, вам понадобится простая анимация.

Если у вас нет выражений, вы можете вручную написать XAML для создания выноски. Вот пример того, что я сделал:

<Path x:Name="Callout" Height="218" Width="197" Stroke="Black" StrokeThickness="2" Fill="WhiteSmoke" Canvas.Top="60" Canvas.Left="53" Stretch="Fill">
    <Path.Effect>
        <DropShadowEffect ShadowDepth="50" Opacity="0.25" BlurRadius="10"  />
    </Path.Effect>
    <Path.Data>
        <PathGeometry>
          <PathGeometry.Figures>
            <PathFigure StartPoint="0 21.1" IsClosed="True">
              <PathFigure.Segments>
                <ArcSegment Point="21.1 0" Size="21.1 21.1" SweepDirection="Clockwise" />
                <LineSegment Point="31.66 0" />
                <LineSegment Point="79.14 0" />
                <LineSegment Point="168.83 0" />
                <ArcSegment Point="189.93 21.1" Size="21.1 21.1" SweepDirection="Clockwise" />
                <LineSegment Point="189.93 73.86" />
                <LineSegment Point="189.93 105.52" />
                <ArcSegment Point="168.83 126.62" Size="21.1 21.1" SweepDirection="Clockwise" />
                <LineSegment Point="79.14 126.62" />
                <LineSegment Point="30.57 213.21" />
                <LineSegment Point="31.66 126.62" />
                <LineSegment Point="21.1 126.62" />
                <ArcSegment Point="0 105.52" Size="21.1 21.1" SweepDirection="Clockwise" />
                <LineSegment Point="0 105.52" />
                <LineSegment Point="0 73.86" />
              </PathFigure.Segments>
            </PathFigure>
          </PathGeometry.Figures>
        </PathGeometry>
    </Path.Data>
</Path>

Хвост выноски не совсем такой, как в примере, и тень тоже отличается, но можно изменить разные значения, чтобы попытаться сделать ее максимально приближенной к образец.

7
ответ дан 13 December 2019 в 22:01
поделиться

Как насчет ToolTipService?

     <Button Content="Test" Width="100" Height="27" ToolTipService.Placement="Bottom">
        <ToolTipService.ToolTip>
            <TextBlock
                Text="Test" />
        </ToolTipService.ToolTip>
    </Button>

Он работает на SL3 и, я думаю, будет работать и на SL4.

3
ответ дан 13 December 2019 в 22:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: