2010-07-29 13 views
11

Hata içeriğinin, Texttip'in denetim kutusunun altında, aşağıdakilerin Tooltip'in hata metnini nasıl içerdiğine benzer şekilde görüntülenmesinin bir yolu var mı? Başka bir deyişleWPF DisplayBu denetim hata mesajıyla aşağıdaki TextBlock denetimi

 <Style x:Key="textBoxInError" TargetType="Control"> 
     <Setter Property="Validation.ErrorTemplate"> 
      <Setter.Value> 
       <ControlTemplate> 
        <DockPanel> 
         <TextBlock DockPanel.Dock="Left" Foreground="Red" FontWeight="Bold">*</TextBlock> 
         <TextBlock Text="WOULD LIKE TO SHOW WHAT TOOLTIP IS SHOWING" DockPanel.Dock="Bottom" Foreground="Red"/> 
         <Border BorderBrush="Red" BorderThickness="2"> 
          <AdornedElementPlaceholder/> 
         </Border> 
        </DockPanel> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
     <Style.Triggers> 
      <Trigger Property="Validation.HasError" Value="True"> 
       <Setter Property="ToolTip" 
         Value="{Binding RelativeSource={x:Static RelativeSource.Self}, 
        Path=(Validation.Errors)[0].ErrorContent}"/> 
      </Trigger> 
     </Style.Triggers> 
    </Style> 

, ben daha çok yerine Tool Tip kontrolü altındaki bir TextBlock hata iletisi gösterir.

+0

Bununla yaşamanıza sorun olduğunu hata mesajı textblock, altında olabilecek diğer kontrollerin üstünde oluşturulacaktır. Bunun için yer açmak için her şeyi çarpıtmaz. Adorner katmanında görüntülenen hata şablonuyla ilgili bir şey ... henüz tam olarak çözülmedi. – statikuz

cevap

18

tıpkı senin böylece ErrorTemplate ait DataContext'i, zaten Validation.Errors değeridir :

<TextBlock Text="{Binding [0].ErrorContent}" DockPanel.Dock="Bottom" Foreground="Red"/> 

veya

<TextBlock Text="{Binding ErrorContent}" DockPanel.Dock="Bottom" Foreground="Red"/> 
İlgili konular