Я хочу использовать таймер только однажды в 1 секунду после инициализации моей основной формы. Я думал, что следующее будет иметь окно сообщения, говорящее "Привет Мир" только однажды, но на самом деле новое окно сообщения говорит "Привет Мир" всех секунду.
Как же так? Я поместил t.Stop()
в событии галочки. Кроме того, я должен расположить таймер так или иначе для предотвращения утечки памяти?
Timer t = new Timer();
t.Interval = 1000;
t.Tick += delegate(System.Object o, System.EventArgs e)
{ MessageBox.Show("Hello World"); t.Stop(); };
t.Start();
Помогите и покажите, существует ли лучший способ сделать это?Спасибо.
Заменить MessageBox.Show ("Hello World"); t.Stop ();
с t.Stop (); MessageBox.Show ("Hello World");
. Поскольку вы не нажимаете ОК вовремя, таймер уже снова сработал, и вы так и не достигли кода остановки.
Поместите t.Stop ();
перед MessageBox.Show ("Привет, мир");