2011-02-24 15 views
7

WPF'ye yeni geldim, sorunun garip olup olmadığını bilmiyorum. Bir textBlock içindeki metnin etrafına bir kenarlık eklemenin mümkün olup olmadığını bilmek istedim.WPF'de bir TextBlock içindeki Metne nasıl kenarlık eklenir?

DÜZENLEME

:

<Border BorderBrush="#FF0B232F" BorderThickness="2"> 
    <TextBlock HorizontalAlignment="Left" Text="TextBlock" TextWrapping="Wrap" FontSize="36" FontWeight="Bold" Foreground="#FF88BCCD" OpacityMask="Black"/>  
</Border> 

ve

<Label BorderBrush="#FF0B232F" BorderThickness="2,2,2,2" Content="TextBlock" FontSize="36" FontWeight="Bold" Foreground="#FF88BCCD" /> 

Burada yanlış mı yapıyorum: öneri gereğince

ben çok başarılı olamadı hem fakat denediniz mi?

+0

Kodunuzda sorun yok. İçinde neyi sevmiyorsun? –

+2

Onun sorusu "nasıl bir metinBir metin (metin içeriği) bir metin etrafında bir sınır eklemek" ... Birisi bu soruya cevap verdi. Bunu nasıl yapacağımı bilmek isterim. – zezba9000

+1

Bu cevaba bakın - http://stackoverflow.com/questions/93650/apply-stroke-to-a-textblock-in-wpf – zezba9000

cevap

3

Bu gibi durumlarda, veya TextBlock kullanıyorum Border.

0

Eğer sadece TextBlock veya başka bir kontrol kullanım etrafına kenarlık yapmak istiyorsanız: ...

4

<Border> 
     <TextBlock></TextBlock> 
    </Border> 

renkli, CornerRadius, kalınlık gibi sınır özelliklerini ayarlayabilirsiniz Hem senin yaklaşımlardır Bununla birlikte, sahip olduğunuz bir ızgarada (veya başka bir kapta) textblock/etiketiniz varsa, içeriği uzar. Eğer bir kenarlıklı tam boy TextBlock soran varsayarsak

<Border BorderBrush="#FF0B232F" BorderThickness="2" VerticalAlignment="Top"> 
    <TextBlock HorizontalAlignment="Left" Text="TextBlock" TextWrapping="Wrap" FontSize="36" FontWeight="Bold" Foreground="#FF88BCCD" OpacityMask="Black"/> 
</Border> 
+1

Filipe doğrudur - ızgara/içeren başka nesneler içeriyorsa, kenarlık etkin bir şekilde kapsanacaktır. tüm ızgara - VerticalAlignemnt ve HorizontalAlignment bunu düzeltir. Sezgisel değil! – Ricibob

2

: .. Uygun bir ortamda (Üst/Sol, Orta) için VerticalAlignment ve/veya HorizontalAlignment ayarı böyle

şey deneyin biz TextBlock üzerinde ızgara satır ve sütun belirtilmemiş Çünkü TextBlock sınırları içinde bindirme

<Grid HorizontalAlignment="Left"> 
    <TextBlock Text="TextBlock" TextWrapping="Wrap" FontSize="36" FontWeight="Bold" Foreground="#FF88BCCD" OpacityMask="Black" /> 
    <Border BorderBrush="#FF0B232F" BorderThickness="2" /> 
</Grid> 

... bir kılavuz ile sarılması ve bunun gibi TextBlock üstünden sınırlarını çizebilir ve sınır nesneler kenarlık, TextBlock'un üstüne yerleşir.

İlgili konular