Очередь печати из WebBrowser (печать нескольких документов) - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Добрый день, Товарищи! Бьюсь третий день... Задача распечатать больше1 документа через webbroser. Проблема: Текст не успевает загрузиться когда больше одного документа. То есть
Листинг программы
  1. For Each line In Split(str, vbCrLf) ''' строки с названием выбранных нами шаблонов
  2. WebBrowser1.Navigate(nameFile)
  3. Tekst = Общий_шаблон(IO.File.ReadAllText((nameFile), System.Text.Encoding.Default), Replace(line, ".htm", "")) '' обрабатываем текст
  4. WebBrowser1.DocumentText = Tekst '' загружаем его
  5. печатаем!!!
  6. Next
Пробовал по разному и в for each вставить принт, тогда вообще ничего не происходит, пробовал на "WebBrowser1_DocumentCompleted" вешать состояние принт после загрузки, но это же никак не останавливает наш цикл for each и он просто забивает новый текст до того, как загрузился старый. Нашел решение вызов Dialog формы, при возвращении ok печатаем.... И все ок, будет 3 файла? Пока вызывается форма он успевает загрузить текст. Побочная проблема, если файлов 10, юзеру нужно ждать 10 окон и жать ок? Ставлю галочку "ок для всех", и всплывает старая проблема.... Он пролетает это окно на бешенной скорости и опять не успевает грузить текст. Вопрос: 1.Какие варианты вообще есть для печати нескольких документов Вы браных юзером. ( может вообще без for each можно обойтись? Может со стороны виднее) 2. Или как можно остановить for each по условию? Thread не получилось у меня.... do while тоже.... 3.Пробовал так же вешать thread только на диологовую форму... но не понимаю... метод кладет весю поток...не получилось у меня заморозить лишь потом формы. П.С. или же вообще можно не грузить текст в форму? Мне не нужен предварительный просмотр и разделение страниц.... Если кто откликнутся, спасибо большое!

Решение задачи: «Очередь печати из WebBrowser (печать нескольких документов)»

textual
Листинг программы
  1.         Do While WebBrowser1.IsBusy = True
  2.             Application.DoEvents()
  3.         Loop
  4.  
  5. 'Документ зашружен, печатаем...

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.222 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут