|
今回の場合、XAMLでやるより、コードでやった方が楽かもしれません。
以下のように、XAMLは Gridの定義だけにします。
<Grid x:Name="MainGrid" />
で、コード側で以下のようにして、Grid内にRectangleを追加していきます。
分かり易いようにわざとループ使用してないですし、
外枠だけマス目の罫線が細かったりするのも放置してます。
そのあたりは摘便ご修正ください。
MainGrid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(30) });
MainGrid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(30) });
MainGrid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(30) });
MainGrid.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(30) });
MainGrid.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(30) });
var Rectangle11 = new Rectangle() { Width = 30, Height = 30, Stroke = Brushes.Black };
MainGrid.Children.Add(Rectangle11);
Rectangle11.SetValue(Grid.RowProperty, 0);
Rectangle11.SetValue(Grid.ColumnProperty, 0);
var Rectangle12 = new Rectangle() { Width = 30, Height = 30, Stroke = Brushes.Black };
MainGrid.Children.Add(Rectangle12);
Rectangle12.SetValue(Grid.RowProperty, 0);
Rectangle12.SetValue(Grid.ColumnProperty, 1);
var Rectangle13 = new Rectangle() { Width = 30, Height = 30, Stroke = Brushes.Black };
MainGrid.Children.Add(Rectangle13);
Rectangle13.SetValue(Grid.RowProperty, 0);
Rectangle13.SetValue(Grid.ColumnProperty, 2);
var Rectangle21 = new Rectangle() { Width = 30, Height = 30, Stroke = Brushes.Black };
MainGrid.Children.Add(Rectangle21);
Rectangle21.SetValue(Grid.RowProperty, 1);
Rectangle21.SetValue(Grid.ColumnProperty, 0);
var Rectangle22 = new Rectangle() { Width = 30, Height = 30, Stroke = Brushes.Black };
MainGrid.Children.Add(Rectangle22);
Rectangle22.SetValue(Grid.RowProperty, 1);
Rectangle22.SetValue(Grid.ColumnProperty, 1);
var Rectangle23 = new Rectangle() { Width = 30, Height = 30, Stroke = Brushes.Black };
MainGrid.Children.Add(Rectangle23);
Rectangle23.SetValue(Grid.RowProperty, 1);
Rectangle23.SetValue(Grid.ColumnProperty, 2);
以上です。
|