Я пытаюсь понять поведение выполнения моей программы.
У меня есть приложение в форме Windows, в котором есть 2 кнопки: «Инициировать» и «Увеличить»
Метод нажатия кнопки «Инициировать»есть вызов, чтобы сделать новый объект. Нажатие кнопки увеличения связано с функцией, которая увеличивается на 5.
Инициирование нажатия кнопки имеет следующее:
private void btnCreate_Click(object sender, EventArgs e)
{
Ball testObj = new Ball();
}
Функция, которая увеличивает значение:
public void Increment()
{
BallCount += 1;
}
BallCount определяется как автоматически реализованное свойство, например:
public int BallCount {get; private set;}
В моей форме дизайна у меня есть метка для отображения количества мячей. Всякий раз, когда я нажимаю кнопку увеличения на форме, текст метки обновляется с увеличенным значением.
Код кнопки увеличения:
private void btnIncrement_Click(object sender, EventArgs e)
{
testObj.Increment();
lblStats.Text = testObj.ToString();
}
Теперь, когда я запускаю свою программу и когда янажмите кнопку увеличения несколько раз, метка обновится и отобразит увеличенное значение, но когда я после этого нажимаю кнопку инициализации, значение метки сбрасывается в 0. Почему это происходит? Я нигде не сбрасываю значение BallCount.