none
Отображение полосы прогресса на форме, запускаемой в фоновом потоке. RRS feed

  • Общие обсуждения

  • Нужно показать полосу прогресса во время загрузки тяжелого слоя карты. Грузить слой карты в фоновом потоке невозможно из-за особенностей картографической библиотеки. Пробовал через BackgroundWorker запускать форму (ФормаПрогресса.ShowDialog()) с полосой прогресса, которая просто показывает анимацию зацикленной полосы до тех пор, пока основной поток не догрузит слой и не убьет фоновый поток BackgroundWorker . Когда прекращаем поток через Dispose или CancelAsync из основного потока, форма остается подвисшей.

    Если закрывать из основного потока, выдает ошибку обращения к Control-у из потока, который его не запускал. Поток, который ее запускал, ей же и остановлен, так что закрыть форму оттуда возможности нет.

    Может есть более простое решение задачи?
    • Изменен тип I.Vorontsov 30 августа 2010 г. 5:51
    • Перемещено Tagore Bandlamudi 1 октября 2010 г. 21:28 MSDN Forums consolidation (От:Visual C#)
    19 августа 2010 г. 11:05

Все ответы

  • Уважаемый пользователь!

     

    В вашей теме отсутствует активность в течение последних 5 дней. При отсутствии каких-либо действий в течение 2 последующих дней, тема будет переведена в разряд обсуждений. Вы можете возобновить дискуссию, просто оставив сообщение в данной теме
    Для связи [Mail]
    26 августа 2010 г. 8:14