This is the code i have to check the players win for the tic tact toe game. It is a very long if statement that can be improved. The board is made of 9 picture boxes.I am a c# beginner.
pBox.Image = Player.players[Player.playerTurn].getImage();
//check for wins
if (pbxSquare0.Image == Player.players[Player.playerTurn].getImage() && //horizontal
pbxSquare1.Image == Player.players[Player.playerTurn].getImage() &&
pbxSquare2.Image == Player.players[Player.playerTurn].getImage()
||
pbxSquare3.Image == Player.players[Player.playerTurn].getImage() &&
pbxSquare4.Image == Player.players[Player.playerTurn].getImage() &&
pbxSquare5.Image == Player.players[Player.playerTurn].getImage()
||
pbxSquare6.Image == Player.players[Player.playerTurn].getImage() &&
pbxSquare7.Image == Player.players[Player.playerTurn].getImage() &&
pbxSquare8.Image == Player.players[Player.playerTurn].getImage()
||
pbxSquare0.Image == Player.players[Player.playerTurn].getImage() && //vertical
pbxSquare3.Image == Player.players[Player.playerTurn].getImage() &&
pbxSquare6.Image == Player.players[Player.playerTurn].getImage()
||
pbxSquare1.Image == Player.players[Player.playerTurn].getImage() &&
pbxSquare4.Image == Player.players[Player.playerTurn].getImage() &&
pbxSquare7.Image == Player.players[Player.playerTurn].getImage()
||
pbxSquare2.Image == Player.players[Player.playerTurn].getImage() &&
pbxSquare5.Image == Player.players[Player.playerTurn].getImage() &&
pbxSquare8.Image == Player.players[Player.playerTurn].getImage()
||
pbxSquare0.Image == Player.players[Player.playerTurn].getImage() && //diagnonal
pbxSquare4.Image == Player.players[Player.playerTurn].getImage() &&
pbxSquare8.Image == Player.players[Player.playerTurn].getImage()
||
pbxSquare2.Image == Player.players[Player.playerTurn].getImage() &&
pbxSquare4.Image == Player.players[Player.playerTurn].getImage() &&
pbxSquare6.Image == Player.players[Player.playerTurn].getImage())
{
//playerturn is the winner
MessageBox.Show(playerturn + "wins");
}