#c# #interop #multiple-tables #bookmarks
#c# #взаимодействие #несколько таблиц #закладки
Вопрос:
возможно ли вставить несколько таблиц в одну закладку в Word 2007. У меня есть файл шаблона Word, и закладка находится в середине файла. Мне нужен разрыв страницы после каждой таблицы. Кажется, что мой код вставляет все таблицы в верхнюю левую ячейку предыдущей таблицы. Я использую VS2008 (3.5).
{ Word._Application oWord;
Word._Document oDoc;
oWord = new Word.Application();
oWord.Visible = true;
object bookmark = "Tables"
oDoc = oWord.Documents.Open(ref fileName,
ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing, ref missing);
var oJ = from o in dbcontext.Org_Jedinica
select o;
Word.Table oTable;
Word.Range wrdRng = oDoc.Bookmarks.get_Item(ref bookNaziv).Range;
foreach (var orgJedinica in oJ)
{
oTable = oDoc.Tables.Add(wrdRng, 24, 2, ref oMissing, ref oMissing);
oTable.Cell(1, 1).Range.Text = "..."; ...
}
}
Ответ №1:
Вам нужно переместить курсор из таблицы после добавления каждой из них.
Попробуйте использовать EndKey
mathod. Не уверен, какое значение WdUnits
вам нужно. В любом случае вам нужно переместить курсор.
Если вы не можете понять, как переместить курсор в конец закладки, вы всегда можете создать пустой документ и поместить в него все таблицы. Используйте EndKey
with WdStory
, чтобы перейти к концу страницы. Затем вставьте документ в свой исходный документ.