public void Init() { //Prepare for generating blocks BlockButtons = new IntelliButton[CurrentGameData.MapRow, CurrentGameData.MapColumn]; MapGrid.MinHeight = Default.MinBlockHeight * CurrentGameData.MapRow; MapGrid.MinWidth = Default.MinBlockWidth * CurrentGameData.MapColumn; //Build grid for (int i = 0; i < CurrentGameData.MapRow; i++) { MapGrid.RowDefinitions.Add(new RowDefinition()); } for (int i = 0; i < CurrentGameData.MapColumn; i++) { MapGrid.ColumnDefinitions.Add(new ColumnDefinition()); } //Add blocks for (int i = 0; i < CurrentGameData.MapRow; i++) { for (int j = 0; j < CurrentGameData.MapColumn; j++) { SetBlock(i, j); } } //Triger 'update event' UpdateWindow(); }
private void SetBlock(int i, int j) { //Create new block BlockButtons[i, j] = new IntelliButton(i, j) { Style = Application.Current.Resources["BlockButtonStyle"] as Style, //Get and use the style FontFamily = Managers.ControlsManager.TextFontFamily }; BlockButtons[i, j].PreviewMouseLeftButtonDown += PreviewMouseLeftButtonUpAction; BlockButtons[i, j].PreviewMouseRightButtonDown += PreviewMouseRightButtonUpAction; //Add block MapGrid.Children.Add(BlockButtons[i, j]); Grid.SetRow(BlockButtons[i, j], i); Grid.SetColumn(BlockButtons[i, j], j); }