private Rectangle CreateRectangle(Vector2 minimum, Vector2 tile)
{
var position = tile - minimum;
var rectangle = new Rectangle
{
HorizontalAlignment = HorizontalAlignment.Left,
VerticalAlignment = VerticalAlignment.Top,
Fill = DefaultFillBrush,
Stroke = StrokeBrush,
Width = TileSize,
Height = TileSize,
Margin = new Thickness(position.X*(TileSize - 1), position.Y*(TileSize - 1), 0, 0)
};
var currentTile = tile;
rectangle.MouseLeftButtonUp += (s, e) =>
{
if (_selectedRectangle != null)
{
_selectedRectangle.Fill = DefaultFillBrush;
_selectedRectangle = rectangle;
}
rectangle.StrokeThickness = 1;
rectangle.Fill = SelectedFillBrush;
_selectedRectangle = rectangle;
_selectedTile = currentTile;
_lblSelected.Content = currentTile;
};
rectangle.MouseEnter += (s, e) => _lblHover.Content = currentTile;
return rectangle;
}