Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Check Spelling 
:(
    Опции темы
shark1
Дата 24.9.2008, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 274
Регистрация: 10.11.2007

Репутация: нет
Всего: нет



Проверяю правописание ,но вот если текст небольшой то все проходит нормально,а вот если большой,то за приложением открывается word doc. и прога подвисает на некоторое время.Подскажите как это исправить.
Код

private void ckb_Spelling_CheckedChanged(object sender, EventArgs e)
        {
            if (ckb_Spelling.Checked == true)
            {
                //ckb_Spelling.Visible = false;

                label.Visible = true;
                Word.Application app = new Word.Application();

                int errors = 0;
                if (txt_File.Text.Length > 0)
                {
                    app.Visible = false;

                    // Setting these variables is comparable to passing null to the function.
                    // This is necessary because the C# null cannot be passed by reference.
                    object template = Missing.Value;
                    object newTemplate = Missing.Value;
                    object documentType = Missing.Value;
                    object visible = true;

                    Word._Document doc1 = app.Documents.Add(ref template, ref newTemplate, ref documentType, ref visible);
                    doc1.Words.First.InsertBefore(txt_File.Text);
                    Word.ProofreadingErrors spellErrorsColl = doc1.SpellingErrors;
                    errors = spellErrorsColl.Count;

                    object optional = Missing.Value;

                    doc1.CheckSpelling(
                        ref optional, ref optional, ref optional, ref optional, ref optional, ref optional,
                        ref optional, ref optional, ref optional, ref optional, ref optional, ref optional);

                    label.Text = errors + " errors corrected ";
                    object first = 0;
                    object last = doc1.Characters.Count - 1;
                    txt_File.Text = doc1.Range(ref first, ref last).Text;
                }

                object saveChanges = false;
                object originalFormat = Missing.Value;
                object routeDocument = Missing.Value;

                app.Quit(ref saveChanges, ref originalFormat, ref routeDocument);
                
            }
        }

Зарание спасибо.
PM MAIL   Вверх
Alekz
Дата 25.9.2008, 11:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 86
Регистрация: 5.2.2008
Где: Запорожье, Украин а

Репутация: нет
Всего: 2



Открывать Ворд в другом потоке.
Проще всего с BackgroundWorker
PM MAIL   Вверх
shark1
Дата 25.9.2008, 19:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 274
Регистрация: 10.11.2007

Репутация: нет
Всего: нет



Spasibo poprobuyu.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.0533 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.