Я играю в память, и в конце мне нужно показать окно с сообщением победителя.Как: "PlayerName выиграл!"Как вы можете видеть в моем коде, я пытаюсь получить содержимое метки "name1" и метки "name2".Когда я запускаю игру, по умолчанию содержимое этих ярлыков равно «Игрок 1» и «Игрок 2».В моей игре есть 2 текстовых поля, и когда я нажимаю кнопку «установить», имена меняются на экране.Таким образом, содержание ярлыков меняется.Но если игра заканчивается, окно сообщения показывает: «Игрок 1 выиграл!»или "Игрок 2 выиграл!"И не имена, которые я установил.Как использовать «обновленное» содержимое моих ярлыков?
My MainWindow.xaml.cs
private void setNames_Click(object sender, RoutedEventArgs e)
{
string userName1 = nameEnter1.Text;
string userName2 = nameEnter2.Text;
name1.Content = userName1;
name2.Content = userName2;
set1.Visibility = Visibility.Collapsed;
set2.Visibility = Visibility.Collapsed;
}
public object AccessNamePlayer1()
{
return name1.Content;
}
public object AccessNamePlayer2()
{
return name2.Content;
}
My MemoryGrid.cs (другой класс)
private void checkWinner()
{
MainWindow window1 = new MainWindow();
object player1 = window1.AccessNamePlayer1();
MainWindow window2 = new MainWindow();
object player2 = window1.AccessNamePlayer2();
if (scoreName1Tot > scoreName2Tot)
{
MessageBox.Show(player1 + " heeft gewonnen!");
}
else if (scoreName1Tot < scoreName2Tot)
{
MessageBox.Show(player2 + " heeft gewonnen!");
}
else if (scoreName1Tot == scoreName2Tot)
{
MessageBox.Show("Gelijkspel!");
}
}