Mega Code Archive

 
Categories / C# / WPF
 

Programmatically change the way in which TextBlock is trimmed when it exceeds the outer boundaries of its containing box

<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"   x:Class="WpfApplication1.Window1"   Title="TextTrimming Sample">     <DockPanel Margin="10">       <StackPanel Orientation="Horizontal" DockPanel.Dock="Top" Margin="0,0,0,25">         <Button Click="ttNone">TextTrimming="None"</Button>         <Button Click="ttCE">TextTrimming="CharacterEllipsis"</Button>         <Button Click="ttWE">TextTrimming="WordEllipsis"</Button>       </StackPanel>       <TextBlock Name="txt1" DockPanel.Dock="Bottom"/>       <TextBlock HorizontalAlignment="Left" TextWrapping="NoWrap"          Width="400" FontFamily="Arial" Name="tf1" DockPanel.Dock="Top"         Background="SkyBlue">         Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt         laoreet dolore magna aliquam erat volutpat.       </TextBlock>     </DockPanel> </Window> //File:Window.xaml.cs using System; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; namespace WpfApplication1 {   public partial class Window1 : Window   {         public void ttNone(object sender, RoutedEventArgs e)         {             tf1.TextTrimming = System.Windows.TextTrimming.None;             txt1.Text = "TextTrimming is now " + tf1.TextTrimming.ToString();         }         public void ttCE(object sender, RoutedEventArgs e)         {             tf1.TextTrimming = System.Windows.TextTrimming.CharacterEllipsis;             txt1.Text = "TextTrimming is now " + tf1.TextTrimming.ToString();         }         public void ttWE(object sender, RoutedEventArgs e)         {             tf1.TextTrimming = System.Windows.TextTrimming.WordEllipsis;             txt1.Text = "TextTrimming is now " + tf1.TextTrimming.ToString();         }     } }