<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); } } }