Use RadioButton to control TextBox alignment

image_pdfimage_print


   
 

<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="WPF" Height="300" Width="300">
    <StackPanel>
        <TextBox AcceptsReturn="True" Height="100" IsReadOnly="True" 
                 Name="textBox1" TextAlignment="Left" TextWrapping="Wrap" 
                 VerticalScrollBarVisibility="Auto">
            Default starting text.
        </TextBox>
        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition/>
                <ColumnDefinition/>
                <ColumnDefinition/>
            </Grid.ColumnDefinitions>
            <RadioButton Checked="AlignmentChecked" Grid.Column="0" 
                         HorizontalAlignment="Center" IsChecked="True"
                         Margin="5" Name="leftAlignRadioButton">
                Left</RadioButton>
            <RadioButton Checked="AlignmentChecked" Grid.Column="1" 
                         HorizontalAlignment="Center" Margin="5"
                         Name="centerAlignRadioButton">
                Center</RadioButton>
            <RadioButton Checked="AlignmentChecked" Grid.Column="2" 
                         HorizontalAlignment="Center" Margin="5"
                         Name="rightAlignRadioButton">
                Right</RadioButton>
        </Grid>
    </StackPanel>
</Window>
//File:Window.xaml.cs
using System.Windows;
using System.Windows.Controls;

namespace WpfApplication1
{
    public partial class Window1 : Window
    {
        public Window1()
        {
            InitializeComponent();
        }
        private void AlignmentChecked(object sender, RoutedEventArgs e)
        {
            RadioButton button = e.OriginalSource as RadioButton;

            if (e.OriginalSource == leftAlignRadioButton)
            {
                textBox1.TextAlignment = TextAlignment.Left;
            }
            else if (e.OriginalSource == centerAlignRadioButton)
            {
                textBox1.TextAlignment = TextAlignment.Center;
            }
            else if (e.OriginalSource == rightAlignRadioButton)
            {
                textBox1.TextAlignment = TextAlignment.Right;
            }

            textBox1.Focus();
        }
    }
}

   
     


Use RadioButton to control TextBox alignment

image_pdfimage_print


   
 

<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="WPF" Height="300" Width="300">
    <StackPanel>
        <TextBox AcceptsReturn="True" Height="100" IsReadOnly="True" 
                 Name="textBox1" TextAlignment="Left" TextWrapping="Wrap" 
                 VerticalScrollBarVisibility="Auto">
            Default starting text.
        </TextBox>
        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition/>
                <ColumnDefinition/>
                <ColumnDefinition/>
            </Grid.ColumnDefinitions>
            <RadioButton Checked="AlignmentChecked" Grid.Column="0" 
                         HorizontalAlignment="Center" IsChecked="True"
                         Margin="5" Name="leftAlignRadioButton">
                Left</RadioButton>
            <RadioButton Checked="AlignmentChecked" Grid.Column="1" 
                         HorizontalAlignment="Center" Margin="5"
                         Name="centerAlignRadioButton">
                Center</RadioButton>
            <RadioButton Checked="AlignmentChecked" Grid.Column="2" 
                         HorizontalAlignment="Center" Margin="5"
                         Name="rightAlignRadioButton">
                Right</RadioButton>
        </Grid>
    </StackPanel>
</Window>
//File:Window.xaml.cs
using System.Windows;
using System.Windows.Controls;

namespace WpfApplication1
{
    public partial class Window1 : Window
    {
        public Window1()
        {
            InitializeComponent();
        }
        private void AlignmentChecked(object sender, RoutedEventArgs e)
        {
            RadioButton button = e.OriginalSource as RadioButton;

            if (e.OriginalSource == leftAlignRadioButton)
            {
                textBox1.TextAlignment = TextAlignment.Left;
            }
            else if (e.OriginalSource == centerAlignRadioButton)
            {
                textBox1.TextAlignment = TextAlignment.Center;
            }
            else if (e.OriginalSource == rightAlignRadioButton)
            {
                textBox1.TextAlignment = TextAlignment.Right;
            }

            textBox1.Focus();
        }
    }
}

   
     


Set StrokeDashArray, StrokeDashCap for Polyline

image_pdfimage_print


   
     

<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="WPF" Height="300" Width="400">
    <UniformGrid Columns="3" HorizontalAlignment="Center" VerticalAlignment="Center">
        <Polyline Margin="10" Stroke="Red" StrokeThickness="5" StrokeDashArray="2" StrokeDashCap="Triangle" Points="10,0 100,0 100,100 10,100 0,20 80,20 180,80 20,80, 20,410 60,40 60,60 40,60" />
    </UniformGrid>
</Window>

   
    
    
    
    
     


Round StrokeDashCap Polyline

image_pdfimage_print


   
     

<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="WPF" Height="300" Width="400">
    <UniformGrid Columns="3" HorizontalAlignment="Center" VerticalAlignment="Center">
        <Polyline Margin="10" Stroke="Black" StrokeThickness="5" StrokeDashArray="5 2 2 2" StrokeDashCap="Round" Points="1,0 100,0 100,100 0,100 0,20 80,20 80,80 210,80, 120,40 60,40 60,60 140,60" />
    </UniformGrid>
</Window>

   
    
    
    
    
     


Bevel StrokeLineJoin Polyline

image_pdfimage_print


   
     

<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="WPF" Height="300" Width="400">
    <UniformGrid Columns="3" HorizontalAlignment="Center" VerticalAlignment="Center">
        <Polyline Margin="10" Stroke="DarkCyan" StrokeThickness="8" StrokeLineJoin="Bevel" Points="10,0 100,10 100,100 0,100 10,20 80,20 80,80 20,80, 120,40 60,40 60,60 40,60" />
    </UniformGrid>
</Window>

   
    
    
    
    
     


StrokeStartLineCap for Polyline

image_pdfimage_print


   
     

<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="WPF" Height="300" Width="400">
    <UniformGrid Columns="3" HorizontalAlignment="Center" VerticalAlignment="Center">
        <Polyline Margin="10" Stroke="Black" StrokeThickness="8" StrokeEndLineCap="Round" StrokeStartLineCap="Round" StrokeLineJoin="Round" StrokeDashCap="Round" StrokeDashArray="10 2" StrokeDashOffset="10" 
        Points="10,11 100,0 100,100 0,100 0,20 80,20 80,80 20,80, 120,40 60,410 60,60 40,60" />
    </UniformGrid>
</Window>

   
    
    
    
    
     


Polyline corner is cut off (beveled) because the miter limit is set to 1

image_pdfimage_print


   
             

<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    x:Class="Microsoft.Samples.Graphics.RectangleExample"
    WindowTitle="Example">
  <Canvas>


    <Polyline
      Points="0,10 50,10 20,35"
      Stroke="#9999CC"
      StrokeThickness="20"
      StrokeMiterLimit="2"
      Canvas.Top="30"
      Canvas.Left="250"/>

  </Canvas>
</Page>