Rotate the text 90 degrees using a RotateTransform


   
  

<Window x:Class="SDKSample.Window1"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  Title="Text Transform Samples"
  Background="FloralWhite"
  Height="640">

    <StackPanel Canvas.Left="0">
      <TextBlock FontFamily="Arial Black" FontSize="64" Foreground="Moccasin" Margin ="80, 10, 0, 0">
        Text Transforms
        <TextBlock.RenderTransform>
          <RotateTransform Angle="90" />
        </TextBlock.RenderTransform>
      </TextBlock>
    </StackPanel>
</Window>

   
    
     


Change MaxHeight


   
  

<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    x:Class="Height_MinHeight_MaxHeight.Window1"
    Title="Height Properties Sample">
  <StackPanel Margin="10">
      <Canvas Height="200" MinWidth="200" Name="myCanvas">
           <Rectangle HorizontalAlignment="Center" Canvas.Top="50" Canvas.Left="50"  Name="rect1" Fill="#4682b4" Height="100" Width="100"/>
      </Canvas>
      <Button Name="Button1" Click="clipRect">Canvas.ClipToBounds="True"</Button>
      <Button Name="Button2" Margin="0,5,5,5" Click="unclipRect">Canvas.ClipToBounds="False"</Button>
     
    <TextBlock Grid.Row="1" Grid.Column="4" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle MaxHeight:</TextBlock>
    <ListBox Grid.Column="5" Grid.Row="1" Margin="10,0,0,0" Height="50" Width="50" SelectionChanged="changeMaxHeight">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem> 
    </ListBox>
  

  </StackPanel>
</Window>

//File:Window.xaml.cs

using System;
using System.Windows;
using System.Windows.Media;
using System.Windows.Controls;
using System.Windows.Documents;

namespace Height_MinHeight_MaxHeight
{
  public partial class Window1 : Window
    {
        public void changeMaxHeight(object sender, SelectionChangedEventArgs args)
        {
            ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
            Double sz1 = Double.Parse(li.Content.ToString());
            rect1.MaxHeight = sz1;
            rect1.UpdateLayout();
            Console.WriteLine("ActualHeight is set to " + rect1.ActualHeight);
            Console.WriteLine("Height is set to " + rect1.Height);
            Console.WriteLine("MinHeight is set to " + rect1.MinHeight);
            Console.WriteLine("MaxHeight is set to " + rect1.MaxHeight);
        }
        

        public void clipRect(object sender, RoutedEventArgs args)
        {
            myCanvas.ClipToBounds = true;
            Console.WriteLine("Canvas.ClipToBounds is set to " + myCanvas.ClipToBounds);
        }
        public void unclipRect(object sender, RoutedEventArgs args)
        {
            myCanvas.ClipToBounds = false;
            Console.WriteLine("Canvas.ClipToBounds is set to " + myCanvas.ClipToBounds);
        }
    }
}

   
    
     


Change MinHeight


   
  

<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    x:Class="Height_MinHeight_MaxHeight.Window1"
    Title="Height Properties Sample">
  <StackPanel Margin="10">
      <Canvas Height="200" MinWidth="200" Name="myCanvas">
           <Rectangle HorizontalAlignment="Center" Canvas.Top="50" Canvas.Left="50"  Name="rect1" Fill="#4682b4" Height="100" Width="100"/>
      </Canvas>
      <Button Name="Button1" Click="clipRect">Canvas.ClipToBounds="True"</Button>
      <Button Name="Button2" Margin="0,5,5,5" Click="unclipRect">Canvas.ClipToBounds="False"</Button>
  <TextBlock Grid.Row="1" Grid.Column="2" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle MinHeight:</TextBlock>
    <ListBox Grid.Column="3" Grid.Row="1" Margin="10,0,0,0" Height="50" Width="50" SelectionChanged="changeMinHeight">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem>
  </ListBox>    

  </StackPanel>
</Window>

//File:Window.xaml.cs

using System;
using System.Windows;
using System.Windows.Media;
using System.Windows.Controls;
using System.Windows.Documents;

namespace Height_MinHeight_MaxHeight
{
  public partial class Window1 : Window
    {
        public void changeMinHeight(object sender, SelectionChangedEventArgs args)
        {
            ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
            Double sz1 = Double.Parse(li.Content.ToString());
            rect1.MinHeight = sz1;
            rect1.UpdateLayout();
            Console.WriteLine("ActualHeight is set to " + rect1.ActualHeight);
            Console.WriteLine("Height is set to " + rect1.Height);
            Console.WriteLine("MinHeight is set to " + rect1.MinHeight);
            Console.WriteLine("MaxHeight is set to " + rect1.MaxHeight);
        }


        public void clipRect(object sender, RoutedEventArgs args)
        {
            myCanvas.ClipToBounds = true;
            Console.WriteLine("Canvas.ClipToBounds is set to " + myCanvas.ClipToBounds);
        }
        public void unclipRect(object sender, RoutedEventArgs args)
        {
            myCanvas.ClipToBounds = false;
            Console.WriteLine("Canvas.ClipToBounds is set to " + myCanvas.ClipToBounds);
        }
    }
}

   
    
     


Change Height


   
  

<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    x:Class="Height_MinHeight_MaxHeight.Window1"
    Title="Height Properties Sample">
  <StackPanel Margin="10">
      <Canvas Height="200" MinWidth="200" Name="myCanvas">
           <Rectangle HorizontalAlignment="Center" Canvas.Top="50" Canvas.Left="50"  Name="rect1" Fill="#4682b4" Height="100" Width="100"/>
      </Canvas>
      <Button Name="Button1" Click="clipRect">Canvas.ClipToBounds="True"</Button>
      <Button Name="Button2" Margin="0,5,5,5" Click="unclipRect">Canvas.ClipToBounds="False"</Button>
    <TextBlock Grid.Row="1" Grid.Column="0" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle Height:</TextBlock>
    <ListBox Grid.Column="1" Grid.Row="1" Margin="10,0,0,0" Height="50" Width="50" SelectionChanged="changeHeight">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem>
    </ListBox>

  </StackPanel>
</Window>

//File:Window.xaml.cs

using System;
using System.Windows;
using System.Windows.Media;
using System.Windows.Controls;
using System.Windows.Documents;

namespace Height_MinHeight_MaxHeight
{
  public partial class Window1 : Window
    {
        public void changeHeight(object sender, SelectionChangedEventArgs args)
        {
            ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
            Double sz1 = Double.Parse(li.Content.ToString());
            rect1.Height = sz1;
            rect1.UpdateLayout();
            Console.WriteLine("ActualHeight is set to " + rect1.ActualHeight);
            Console.WriteLine("Height is set to " + rect1.Height);
            Console.WriteLine("MinHeight is set to " + rect1.MinHeight);
            Console.WriteLine("MaxHeight is set to " + rect1.MaxHeight);
        }


        public void clipRect(object sender, RoutedEventArgs args)
        {
            myCanvas.ClipToBounds = true;
            Console.WriteLine("Canvas.ClipToBounds is set to " + myCanvas.ClipToBounds);
        }
        public void unclipRect(object sender, RoutedEventArgs args)
        {
            myCanvas.ClipToBounds = false;
            Console.WriteLine("Canvas.ClipToBounds is set to " + myCanvas.ClipToBounds);
        }
    }
}

   
    
     


Rectangle mouse down preview


   
  


<Window
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    x:Class="WpfApplication1.Window1"
    Title="Routed Events" Height="400" Width="800">
  
    <Grid Name="contentGrid" Background="Red">
        <Rectangle Name="clickMeRectangle" 
                   Height="70" 
                   Width="70" 
                   Stroke="Black" 
                   PreviewMouseDown="Generic_MouseDown" 
                   Fill="CadetBlue" />
        <Button Name="clickMeButton" 
                Height="23" 
                HorizontalAlignment="Right" 
                VerticalAlignment="Top" 
                Width="70" 
                Click="clickMeButton_Click">Click Me</Button>
        <TextBlock Name="outputText" />
    </Grid>
</Window>

//File:Window.xaml.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace WpfApplication1
{
    public partial class Window1 : Window
    {
        private void Generic_MouseDown(object sender, MouseButtonEventArgs e)
        {
            Console.WriteLine(outputText.Text);
            Console.WriteLine(e.RoutedEvent.Name);
            Console.WriteLine(sender.ToString());
            Console.WriteLine(((FrameworkElement)e.Source).Name);
        }

        private void Window_MouseUp(object sender, MouseButtonEventArgs e)
        {
            outputText.Text = outputText.Text;
        }

        private void clickMeButton_Click(object sender, RoutedEventArgs e)
        {
            outputText.Text = "Button clicked:" + outputText.Text;
        }
    }
}

   
    
     


Rectangle mouse down event


   
  


<Window
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    x:Class="WpfApplication1.Window1"
    Title="Routed Events" Height="400" Width="800">
  
    <Grid Name="contentGrid" Background="Red">
        <Rectangle Name="clickMeRectangle" 
                   Height="70" 
                   Width="70" 
                   Stroke="Black" 
                   MouseDown="Generic_MouseDown" 
                   Fill="CadetBlue" />
        <Button Name="clickMeButton" 
                Height="23" 
                HorizontalAlignment="Right" 
                VerticalAlignment="Top" 
                Width="70" 
                Click="clickMeButton_Click">Click Me</Button>
        <TextBlock Name="outputText" />
    </Grid>
</Window>

//File:Window.xaml.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace WpfApplication1
{
    public partial class Window1 : Window
    {
        private void Generic_MouseDown(object sender, MouseButtonEventArgs e)
        {
            Console.WriteLine(outputText.Text);
            Console.WriteLine(e.RoutedEvent.Name);
            Console.WriteLine(sender.ToString());
            Console.WriteLine(((FrameworkElement)e.Source).Name);
        }

        private void Window_MouseUp(object sender, MouseButtonEventArgs e)
        {
            outputText.Text = outputText.Text;
        }

        private void clickMeButton_Click(object sender, RoutedEventArgs e)
        {
            outputText.Text = "Button clicked:" + outputText.Text;
        }
    }
}

   
    
     


Create rectangles in WPF.


   
      


<Window x:Class="RectangleShape"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  Title="Rectangles" Height="340" Width="200">
  <Grid>
    <StackPanel>
      <TextBlock Text="RadiusX = 0, RadiusY = 0:"
        Margin="10 10 10 5" />
      <Rectangle Width="150" Height="70" Fill="LightGray"
        Stroke="Black" />
      <TextBlock Text="RadiusX = 20, RadiusY = 10:"
        Margin="10 10 10 5" />
      <Rectangle Width="150" Height="70" RadiusX="20" RadiusY="10"
        Fill="LightGray" Stroke="Black" />
      <TextBlock Text="RadiusX = 75, RadiusY = 35:"
        Margin="10 10 10 5" />
      <Rectangle Width="150" Height="70" RadiusX="75" RadiusY="35"
        Fill="LightGray" Stroke="Black" />
    </StackPanel>
  </Grid>
</Window>