Change your code to the following.
int playerOneScore = 1000;
public void playerTwo(object sender, EventArgs e)
{
Random rnd = new Random();
int attack = rnd.Next(1, 10);
//int playerOneScore = 1000; <-- don't set playerOneScore inside the method, as this line gets executed with every time calling this method so it again and again gets set to 1000
//int playerOneScores; <-- don't get the meaning of this one, so I removed it and I am changing the playerOneScore field
playerOneScore = playerOneScore - (1 * attack);
playerOneHealth.Text = playerOneScore.ToString();
}
Additionally to this you should consider moving the Random variable outside the method aswell, since creating a Random object to fast will give you the same result over and over again.
You can read why this happens here: Random number generator only generating one random number
So, I would suggest changing it to this:
int playerOneScore = 1000;
Random rnd = new Random();
public void playerTwo(object sender, EventArgs e)
{
//Random rnd = new Random(); <-- don't create Random here as it will likey produce the same random number over and over again
int attack = rnd.Next(1, 10);
//int playerOneScore = 1000; <-- don't set playerOneScore inside the method, as this line gets executed with every time calling this method so it again and again gets set to 1000
//int playerOneScores; <-- don't get the meaning of this one, so I removed it and I am changing the playerOneScore field
playerOneScore = playerOneScore - (1 * attack);
playerOneHealth.Text = playerOneScore.ToString();
}
See it in action here:
https://dotnetfiddle.net/djr94j
(I had to change it to static fields and methods, thats not necessary for you)