private void AvailableMoves(object sender, RoutedEventArgs e) { RemoveButtons(); tempButtons.Clear(); selectedButton = sender as Button; from = new int[] { switcher[Grid.GetRow(selectedButton)], Grid.GetColumn(selectedButton) }; List <int[]> availableMoves = Move.Select(from); foreach (int[] item in availableMoves) { Button button = new Button(); Grid.SetRow(button, switcher[item[0]]); Grid.SetColumn(button, item[1]); ImageBrush imageBrush = new ImageBrush(new BitmapImage(new Uri("..\\..\\..\\Resources\\canMove.png", UriKind.Relative))); button.Background = imageBrush; button.Click += MovePiece; tempButtons.Add(button); ChessBoard.Children.Add(button); } }