protected override void OnMouseDown(MouseEventArgs e)
{
this.Focus();
if (tiles == null) return;
int x = e.X/(width+2*space);
int y = (e.Y-startY)/(height+2*space);
if(x>=numAcross)
x=numAcross-1;
selectedNum = y*numAcross+x;
selectedNum = (selectedNum<tiles.Length)?selectedNum:tiles.Length-1;
if(TileChanged!=null)
TileChanged(this,SelectedTile);
Refresh();
}