2015-06-03 2 views
2

У меня есть форма (изображения), которая вызывается из другой формы (Main). В форме «Изображения» используется макет потока, который объединяет пользовательские пользовательские элементы управления. В usercontrol есть картинка, которая использует метод PictureBox.LoadAsync() для получения изображения из URI. Проблема в том, что сетевая активность не прекращается после закрытия формы «Изображения».PictureBox продолжает загрузку после закрытия формы

Я попытался обработать событие UserControl.Disposed, чтобы сделать PictureBox.CancelAsync() на картинке, но безрезультатно. Что делать, если загрузка прекращается, если форма изображений закрыта.

+0

Не уверен, что это сработает. Попробуйте подписаться на событие «Закрытие» формы «Изображение» и отменить все сразу: 'foreach (var pbox in this.Controls.OfType () .SelectMany (x => x.Controls.OfType ())) pbox .CancelAsync(); ' –

+0

@GrantWinney, уже пробовал, что –

+0

О, я думал, вы только пытались обработать события UserControls Disposed, что я не предлагаю. –

ответ

0

Попробуйте добавить 'PictureBox.CancelAsync()' в обработчик событий закрытого типа. У вас нет контроля над тем, когда будет выведено событие Disposed.

+0

Несомненно, PictureBox находится в UserControl. Как вы называете ее CancelAsync из формы. –

Смежные вопросы