Wpf 在Silverlight中将鼠标悬停在对象上时显示自定义工具提示?/Popup

Wpf 在Silverlight中将鼠标悬停在对象上时显示自定义工具提示?/Popup,wpf,silverlight,silverlight-4.0,Wpf,Silverlight,Silverlight 4.0,当我在Silverlight应用程序中悬停或单击某个对象时,如何获得类似的弹出/悬停/工具提示(见下图) 更新:(增加了赏金) 我正在寻找一个控件,它可以投下阴影并显示箭头。我想要3-4行数据,可以作为控件的属性传入 工具提示服务怎么样 <Button Content="Test" Width="100" Height="27" ToolTipService.Placement="Bottom"> <ToolTipService.ToolTip>

当我在Silverlight应用程序中悬停或单击某个对象时,如何获得类似的弹出/悬停/工具提示(见下图)

更新:(增加了赏金)

我正在寻找一个控件,它可以投下阴影并显示箭头。我想要3-4行数据,可以作为控件的属性传入


工具提示服务怎么样

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


它适用于SL3,我相信也适用于SL4。

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>


调用的尾部与示例中的尾部不完全相同,dropshadow也不同,但可以更改不同的值,使其看起来尽可能接近示例。

感谢您的回复。我试图使用ToolTipService,但是有没有一种方法可以显示箭头从工具提示打开的那个点到那个点,并使它看起来很漂亮。@VoodooClild:我相信你可以得到非常接近的东西。我想ExpressionBlend是你的朋友。我不是很熟练的XAML效果,所以我不能帮助你更多。如果您尚未完成,请尝试在Expression论坛上发布消息:。还有一个Silverlight论坛的设计:我没有Expression Blend 4,有没有办法在普通XAML代码上实现它。你能举个例子吗-thanks@VoodooChild:我在上面的编辑中提供了一个普通XAML调用的示例。+1我将在本周末试用此示例。谢谢,很快就会奖励积分的。@VoodooChild:很高兴听到这个对你有用。您可能希望打开另一个关于显示标注的问题,以便整个社区都有机会提供答案。