Fill the overline decoration with a linear gradient brush in VB
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" x:Class="TextDecorationExample.Window1" Title="TextDecoration Example" Width="720" Height="400" Loaded="WindowLoaded"> <StackPanel> <TextBlock Name="overlineTextBlock" FontSize="24" Width="180" VerticalAlignment="Center">The lazy dog</TextBlock> </StackPanel> </Window> //File:Window.xaml.vb Imports System Imports System.Windows Imports System.Windows.Media Namespace TextDecorationExample Public Partial Class Window1 Inherits Window Private Sub WindowLoaded(sender As Object, e As EventArgs) ' Fill the overline decoration with a linear gradient brush. Dim myCollection As New TextDecorationCollection() Dim myOverline As New TextDecoration() myOverline.Location = TextDecorationLocation.OverLine ' Set the linear gradient brush. Dim myPen As New Pen() myPen.Brush = New LinearGradientBrush(Colors.LimeGreen, Colors.Yellow, 0) myPen.Thickness = 3 myOverline.Pen = myPen myOverline.PenThicknessUnit = TextDecorationUnit.FontRecommended ' Set the overline decoration to the text block. myCollection.Add(myOverline) overlineTextBlock.TextDecorations = myCollection End Sub End Class End Namespace