2012-07-12 19 views
17
Ben aşağıdaki resim gibi benim WPF araç ipucu şekillendirmek isteyen

: Nasıl bunu başarmak yokWPF araç ipucu nasıl bir konuşma balonu gibi çizilir?

enter image description here

?

+0

Geçenlerde benzer bir sorun üzerinde geldi ve ben yardımcı olabilir inanıyoruz iki mesajları üretti: http://pmichaels.net/2016/04/01/tooltip-speech-bubbles/ ve http: // pmichaels.net/2016/04/08/creating-a-speech-bubble-with-rounded-corners/ –

cevap

42

bunu kullanın Kodu:

<Window x:Class="WpfApplication2.MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:ed="http://schemas.microsoft.com/expression/2010/drawing" 
    x:Name="Window" 
    Title="MainWindow" 
    Width="640" 
    Height="480"> 

<Window.Resources> 

    <Style x:Key="{x:Type ToolTip}" TargetType="ToolTip"> 
     <Setter Property="OverridesDefaultStyle" Value="true" /> 
     <Setter Property="HasDropShadow" Value="True" /> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="ToolTip"> 
        <ed:Callout Name="Border" 
           Width="{TemplateBinding Width}" 
           Height="{TemplateBinding Height}" 
           MinWidth="100" 
           MinHeight="30" 
           Margin="0,0,0,50" 
           AnchorPoint="0,1.5" 
           Background="{StaticResource LightBrush}" 
           BorderBrush="{StaticResource SolidBorderBrush}" 
           BorderThickness="1" 
           CalloutStyle="RoundedRectangle" 
           Fill="#FFF4F4F5" 
           FontSize="14.667" 
           Stroke="Black"> 
         <ContentPresenter Margin="4" 
              HorizontalAlignment="Left" 
              VerticalAlignment="Top" /> 
        </ed:Callout> 

       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 

</Window.Resources> 
<Grid> 
    <Button ToolTip="Hello" /> 
</Grid> 

bu başlangıcıdır, şimdi onunla oynamak zorunda ... tadını çıkarın!

enter image description here

+0

Teşekkürler harry. Başka bir sorum var: xmlns için bir derleme ekleyelim: ed = "http://schemas.microsoft.com/expression/2010/drawing"? –

+7

Evet, Microsoft.Expression.Drawing derlemesi ekleyin. – Harry

+0

Müthiş! Parlak çalışma, kesinlikle bir OYUN NO –

0

control template yeni bir araç ipucu oluşturabilirsiniz.

+0

Bir çalışma örneği gönderir misiniz? Alternatif uygulamayı görmek ilginç olurdu. – Tim