Недопустимый межпотоковый доступ при вызове MessageBox - C#
Формулировка задачи:
мне нужно чтобы при работе потока что он(помимо тех действий которые он сам выполняет) вызывал messagebox периодически т.е. создаю я поток
а поток во время работы каждые 15 секунд(интервал больше вообще будет но для теста пойдет) перезагружает информацию с сервера.
но при такой записи у меня выкидывает исключение "недопустимый межпотоковый доступ".
получается вызов messagebox'а нужно в отдельный поток выкидывать?
однако при работе у меня выбросило исключение что "может выполняться только в потоке пользовательского интерфейса" т.е. я не могу вызываться jscript функции из html файла в потоках?
Листинг программы
- Thread s =new Thread(SendWeatherRequestThread);
- s.Start();
Листинг программы
- public void SendWeatherRequestThread()
- {
- while (true)
- {
- Thread.Sleep(15000);
- MessageBox.Show("Try to reload data!");
- .....какие -то действия
- }
- }
вот еще одна ошибка добавилось
у меня в функции потока есть такой вызов
Листинг программы
- string settings = HtmlPage.Window.Invoke("ReadFile", new object[] {path1}) as string;
Решение задачи: «Недопустимый межпотоковый доступ при вызове MessageBox»
textual
Листинг программы
- if (!this.Dispatcher.CheckAccess())
- this.Dispatcher.BeginInvoke(new Action(() => MessageBox.Show("Try to reload data!")));
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д