Работаем с MS Word из C#, часть 0, класс и тестовый проект-пример WinForms

Иллюстрация к циклу заметок про работу с Microsoft Word из C#. Проект Visual Studio 2010, два класса - WordDocument и WordSelection (просто часть документа, обертка над Range), реализующие описанные приемы, тестовый шаблон и простенькое окошко, позволяющее протестировать работу классов и наглядно увидеть, как именно все цепляется к событиям формы для самых начинающих. Если вы любите умные слова, то эти классы используют шаблон Фасад.



Тестовый проект с классами и небольшой формой для Visual Studio 2010 -- WordTest.zip

Примеры финального кода с использованием приведенных в проекте классов

Открытие шаблона

private string pathToTemplate { get { return Application.StartupPath + "\\" + pathTextBox.Text; } }
WordDocument wordDoc;
try
{
    wordDoc = new WordDocument(pathToTemplate);
}
catch (Exception error)
{
    MessageBox.Show("Ошибка при открытии шаблона Word. Подробности " + error.Message);
    return;
}
wordDoc.Visible = true;

Вставка текста на закладку

wordDoc.SetSelectionToBookmark(bookmarkTextBox.Text);

wordDoc.InsertParagraphAfter("Вставляем ПЕРВЫЙ параграф с текстом. Параметры по умолчанию.");
wordDoc.InsertParagraphAfter(); // пустой

wordDoc.InsertParagraphAfter("Вставляем ВТОРОЙ параграф с текстом. Жирный, выравнивание справа. Размер шрифта 8.");
wordDoc.Selection.Bold = true;
wordDoc.Selection.Aligment = TextAligment.Right;
wordDoc.Selection.FontSize = 8;
wordDoc.InsertParagraphAfter(); // пустой

wordDoc.InsertParagraphAfter("Вставляем ТРЕТИЙ параграф с текстом. Курсив, выравнивание по центру. Размер шрифта 18. Рамка.");
wordDoc.Selection.Italic = true;
wordDoc.Selection.Aligment = TextAligment.Center;
wordDoc.Selection.FontSize = 18;
wordDoc.Selection.Border = BorderType.Double;
wordDoc.InsertParagraphAfter(); // пустой

wordDoc.InsertParagraphAfter("Вставляем ЧЕТВЕРТЫЙ параграф с текстом. Параметры по умолчанию. Размер шрифта 12.");
wordDoc.Selection.FontSize = 12;

Внутренне устройство этих классов и теоретические принципы работы Word разобраны в дальнейших статьях этого цикла.

  1. Работаем с MS Word из C#, часть 0, класс и тестовый проект-пример WinForms
  2. Работаем с MS Word из C#, часть 1. Открываем шаблон, ищем текст внутри документа
  3. Работаем с MS Word из C#, часть 2. Вставляем текст на закладку и форматируем
  4. Работаем с MS Word из C#, часть 3. Работа с таблицами
  5. Работаем с MS Word из C#, часть 4. Обьединяем несколько файлов в один, считаем количество страниц
  6. Microsoft.Office.Interop.Word Namespace
  7. Range Interface

Комментарии

Работаем с MS Word из C#, часть 0, класс и тестовый проект-пример WinForms — Комментарии (5)

  1. WordDocument wordDoc что это такое???? помогите. я код всталяю у меня все красным красно...

    • Все примеры кода на этой странице используют специальные классы для работы с Word, без этих классов они работать не будут.

    • Человек пришел сюда, чтобы чему-то научиться.
      Задал первый вопрос, ты его сразу же отшил.
      Петрос, если ты такой умный, то почему читаешь эти статьи?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *


*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>