Mega Code Archive

 
Categories / C# / WPF
 

Programmatically use the positioning methods of Grid

<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"     x:Class="WpfApplication1.Window1"     Title="Grid Methods Sample">     <DockPanel VerticalAlignment="Top" HorizontalAlignment="Left">         <Grid Margin="10" DockPanel.Dock="Left">           <Grid.ColumnDefinitions>             <ColumnDefinition/>             <ColumnDefinition/>           </Grid.ColumnDefinitions>           <Grid.RowDefinitions>             <RowDefinition/>           </Grid.RowDefinitions>           <StackPanel Grid.Column="0" Grid.Row="0" HorizontalAlignment="Left" Orientation="Vertical">             <Button Click="setCol0">Move Rectangle to Column 0</Button>             <Button Click="setCol1">Move Rectangle to Column 1</Button>             <Button Click="setCol2">Move Rectangle to Column 2</Button>             <Button Click="setRow0">Move Rectangle to Row 0</Button>             <Button Click="setRow1">Move Rectangle to Row 1</Button>             <Button Click="setRow2">Move Rectangle to Row 2</Button>             <Button Click="setColspan">Span All Columns</Button>             <Button Click="setRowspan">Span All Rows</Button>           </StackPanel>         </Grid>       <Grid DockPanel.Dock="Top" Name="grid1" ShowGridLines="True" Width="400" Height="400">         <Grid.ColumnDefinitions>         <ColumnDefinition/>         <ColumnDefinition/>         <ColumnDefinition/>       </Grid.ColumnDefinitions>       <Grid.RowDefinitions>         <RowDefinition/>         <RowDefinition/>         <RowDefinition/>       </Grid.RowDefinitions>         <Rectangle Name="rect1" Fill="Silver" Grid.Column="0" Grid.Row="0"/>         <TextBlock FontSize="15" HorizontalAlignment="Right" VerticalAlignment="Bottom" Grid.Column="0" Grid.Row="0" Margin="5">Column 0, Row 0</TextBlock>         <TextBlock FontSize="15" HorizontalAlignment="Right" VerticalAlignment="Bottom" Grid.Column="1" Grid.Row="0" Margin="5">Column 1, Row 0</TextBlock>         <TextBlock FontSize="15" HorizontalAlignment="Right" VerticalAlignment="Bottom" Grid.Column="2" Grid.Row="0" Margin="5">Column 2, Row 0</TextBlock>         <TextBlock FontSize="15" HorizontalAlignment="Right" VerticalAlignment="Bottom" Grid.Column="0" Grid.Row="1" Margin="5">Column 0, Row 1</TextBlock>         <TextBlock FontSize="15" HorizontalAlignment="Right" VerticalAlignment="Bottom" Grid.Column="1" Grid.Row="1" Margin="5">Column 1, Row 1</TextBlock>         <TextBlock FontSize="15" HorizontalAlignment="Right" VerticalAlignment="Bottom" Grid.Column="2" Grid.Row="1" Margin="5">Column 2, Row 1</TextBlock>         <TextBlock FontSize="15" HorizontalAlignment="Right" VerticalAlignment="Bottom" Grid.Column="0" Grid.Row="2" Margin="5">Column 0, Row 2</TextBlock>         <TextBlock FontSize="15" HorizontalAlignment="Right" VerticalAlignment="Bottom" Grid.Column="1" Grid.Row="2" Margin="5">Column 1, Row 2</TextBlock>         <TextBlock FontSize="15" HorizontalAlignment="Right" VerticalAlignment="Bottom" Grid.Column="2" Grid.Row="2" Margin="5">Column 2, Row 2</TextBlock>       </Grid>     </DockPanel> </Window> //File:Window.xaml.cs using System; using System.Windows; using System.Windows.Controls; namespace WpfApplication1 {   public partial class Window1 : Window   {     private void setCol0(object sender, RoutedEventArgs e)      {             Grid.SetColumn(rect1, 0);             Console.WriteLine("Column " + Grid.GetColumn(rect1).ToString());     }         private void setCol1(object sender, RoutedEventArgs e)         {             Grid.SetColumn(rect1, 1);             Console.WriteLine("Column " + Grid.GetColumn(rect1).ToString());         }         private void setCol2(object sender, RoutedEventArgs e)         {             Grid.SetColumn(rect1, 2);             Console.WriteLine("Column " + Grid.GetColumn(rect1).ToString());         }     private void setRow0(object sender, RoutedEventArgs e)     {             Grid.SetRow(rect1, 0);             Console.WriteLine("Row " + Grid.GetRow(rect1).ToString());     }         private void setRow1(object sender, RoutedEventArgs e)         {             Grid.SetRow(rect1, 1);             Console.WriteLine("Row " + Grid.GetRow(rect1).ToString());         }         private void setRow2(object sender, RoutedEventArgs e)         {             Grid.SetRow(rect1, 2);             Console.WriteLine("Row " + Grid.GetRow(rect1).ToString());         }         private void setColspan(object sender, RoutedEventArgs e)     {             Grid.SetColumnSpan(rect1, 3);             Console.WriteLine("ColumnSpan " + Grid.GetColumnSpan(rect1).ToString());     }     private void setRowspan(object sender, RoutedEventArgs e)     {             Grid.SetRowSpan(rect1, 3);             Console.WriteLine("RowSpan " + Grid.GetRowSpan(rect1).ToString());     }         private void clearAll(object sender, RoutedEventArgs e)         {             Grid.SetColumn(rect1, 0);             Grid.SetRow(rect1, 0);             Grid.SetColumnSpan(rect1, 1);             Grid.SetRowSpan(rect1, 1);         }   } }