2010-06-28 19 views
7

WPF'de dinlenmek istediğim, köşeleri yuvarlatılmış bir etiketim var.WPF Etiket Tasarımı

<Style TargetType="{x:Type Label}">   
    <Setter Property="Background" Value="Red"/> 
    <Setter Property="Margin" Value="2,2,2,2"/> 
    <Setter Property="BorderThickness" Value="2"/> 
    <Setter Property="BorderBrush" Value="Blue"/> 
    </Style> 

kimse değiştiremez gerekir bu etikete

çok teşekkür

cevap

15

bir köşe Radius eklersiniz nasıl yardımcı misiniz:

Zaten aşağıdaki kodu var Yuvarlatılmış köşeler elde etmek için Label için ControlTemplate. Etiket denetiminin kendisi bir CornerRadius özelliğini ortaya çıkarmaz.

Aşağıdakileri Stilinize ekleyin ve Etiketinizde yuvarlak kenarlar elde edersiniz. Ben bunu keyfi olarak "3" e ayarlıyorum, ancak ihtiyaçlarınız her ne olursa olsun onu ayarlayabilirsin.

<Setter Property="Template"> 
    <Setter.Value> 
     <ControlTemplate TargetType="{x:Type Label}"> 
      <Border BorderBrush="{TemplateBinding BorderBrush}" 
       BorderThickness="{TemplateBinding BorderThickness}" 
       Background="{TemplateBinding Background}" 
       Padding="{TemplateBinding Padding}" 
       SnapsToDevicePixels="true" 
       CornerRadius="3"> 
       <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/> 
      </Border> 
      <ControlTemplate.Triggers> 
       <Trigger Property="IsEnabled" Value="false"> 
        <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/> 
       </Trigger> 
      </ControlTemplate.Triggers> 
     </ControlTemplate> 
    </Setter.Value> 
</Setter> 
+0

Mükemmel - teşekkürler – Bruie

3

kolay olurdu Border eleman kullanma.

<Border CornerRadius="10" BorderThickness="2" BorderBrush="Blue" Background="Red" Margin="2"> 
    <Label Content="Lorem ipsum" /> 
</Border>