Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Xaml TextBlock set round corner

I am trying to set rounded corner of TextBlock in xaml. But there is no such property.

<Grid x:Name="grdDis" Grid.Row="1">
        <TextBlock Text="Description" TextWrapping="Wrap" HorizontalAlignment="Left" VerticalAlignment="Top" Name="txtDescription" Margin="18,10,0,0" Height="128" Width="445"/>
</Grid>

How can I set rounded corner of TextBlock. And also want to set Background color of TextBlock.

like image 214
Ajay Avatar asked Aug 21 '13 05:08

Ajay


3 Answers

Use Border:

    <Border Margin="5" Padding="5" BorderThickness="1" BorderBrush="Red" Background="AntiqueWhite" CornerRadius="10">
        <TextBlock Text="Lorem ipsum"/>
    </Border>
like image 125
Dennis Avatar answered Nov 15 '22 06:11

Dennis


for that use the Border element as a parent of textBlock as like,

 <Border BorderThickness="1" BorderBrush="Black" Background="Green" CornerRadius="5">
    <TextBlock Text="Description"/>
</Border>

you already got it. :)

like image 44
Nikhil Prajapati Avatar answered Nov 15 '22 06:11

Nikhil Prajapati


TextBlock do not have such property, however you can do it like this using Rectangle's RadiusX and RadiusY property by binding the width and height of Rectangle to Textblock Width and height.

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
        <TextBlock Name="textBlock" Padding="5,0" Text="This is my TextBlock" Height="30" Width="Auto" VerticalAlignment="Top"/>
        <Rectangle RadiusX="5" RadiusY="5" Width="{Binding Width,ElementName=textBlock}" Height="{Binding Height,ElementName=textBlock}" Stroke="White" StrokeThickness="3" VerticalAlignment="Top"/>
</Grid>
like image 35
Amit Singh Avatar answered Nov 15 '22 05:11

Amit Singh