При отладке такого рода вещей первым делом необходимо поработать с «родными» объектами Word (Microsoft.Office.Interop.Word) и убедиться, что все на этом уровне работает нормально.
Если вам не нужны объекты VSTO, не используйте их - придерживайтесь нативных объектов. Мне совершенно непонятно, зачем вам нужен объект VSTO GroupContentControl - насколько я знаю, специальных функций VSTO для управления контентом группы не существует.
Как бы то ни было, если вам нужны объекты VSTO в надстройке, во время выполнения вы должны создавать их - каждый раз, когда запускается ваша надстройка. Следующий код делает это. Вам следует начать с документа native Word, потому что он вам понадобится позже.
Затем создайте объект документа VSTO из исходного документа Word. В принципе, у вас это есть, но вы должны начинать с собственного объекта, а не возвращаться к глобальным ... ActiveDocument Обратите внимание, что мой код немного отличается от вашего в этом отношении, поскольку я нацеливаюсь на другую .NET Framework. Вы должны продолжать использовать Globals.Factory.GetVstoObject...
Следующий шаг - получить контроль над содержимым собственной группы. Поскольку у вас есть статический идентификатор, и вы хотите получить только один элемент управления содержимым, просто обращайтесь к нему напрямую без лямд, или коллекций, или чего-либо еще: doc.ContentControls[gcc_ID];
Из встроенного элемента управления содержимым вы можете добавить элемент управления содержимым VSTO типа GroupContentControl. Этот объект является динамическим и не будет сохранен в документе (или где-либо еще), как только надстройка выйдет из области видимости.
С этого момента вы должны быть в порядке.
private void btnGroupCC_Click(object sender, RibbonControlEventArgs e)
{
Word.Document doc = Globals.ThisAddIn.Application.ActiveDocument;
// Get a VSTO document object
Microsoft.Office.Tools.Word.Document VSTOdoc = Microsoft.Office.Tools.Word.Extensions.DocumentExtensions.GetVstoObject(doc);
// Find the GCC in the document, by its ID
string gcc_ID = "778611894";
Word.ContentControl cc = doc.ContentControls[gcc_ID];
Microsoft.Office.Tools.Word.GroupContentControl gcc = VSTOdoc.Controls.AddGroupContentControl(cc, "groupCC");
// Safety check
if (gcc == null)
MessageBox.Show("no group cc");
// Delete the GCC
gcc.Delete(false);
}
Ссылка: https://msdn.microsoft.com/en-us/library/bb386200.aspx#runtimeaddin, тема о добавлении элементов управления содержимым во время выполнения.