public void InitBoard() { this.imageSourceProvider = new ImageSourceFactory(); this.balloonFactory = new GraphicsBalloonFactory(this.imageSourceProvider); Grid grid = new Grid(); for (int i = 0; i < boardSize; i++) { grid.RowDefinitions.Add(new RowDefinition()); grid.ColumnDefinitions.Add(new ColumnDefinition()); } for (int row = 0; row < boardSize; row++) { for (int col = 0; col < boardSize; col++) { field[row, col] = this.balloonFactory.GetBalloon(RandomGenerator.GetRandomInt()); field[row, col].Source = field[row, col].ImageSource; field[row, col].Tag = row + "/" + col; field[row, col].MouseDown += Click; Grid.SetRow(field[row, col], row); Grid.SetColumn(field[row, col], col); grid.Children.Add(field[row, col]); } } this.Content = grid; }
public GraphicsBalloon(int value, GraphicsTraversal traversal, BitmapImage imageSource, ImageSourceFactory imageSourceProvider) : base() { this.imageSourceProvider = imageSourceProvider; this.IsPopped = false; this.Value = value; this.TraversalEffect = traversal; this.ImageSource = imageSource; }
public GraphicsBalloonFactory(ImageSourceFactory imageSourceFactory) { this.imageSourceFactory = imageSourceFactory; }