Хорошо, я создал обходной путь, который на самом деле работает даже лучше.
Сначала я извлекаю все таблицы из документа ..
List<Table> tables = mainPart.Document.Body.Descendants<Table>().ToList();
Затем я проверяю параметр тега SdtBlock, который является родителем моей таблицы, чтобы увидеть, совпадают ли они.
for (int f = 0; f < tables.Count; f++)
{
// If a table is found in the correct Content Control, fill it up with the data
if (tables.ElementAt(f).Parent.Parent.GetFirstChild<SdtProperties>().GetFirstChild<Tag>().Val == t.Name)
{ //the rest of your code...
t.Name - тег содержимого, которое я хотел найти.
Я на самом деле очень рад этому результату, потому что это решает тот факт, что несколько одинаковых таблиц (в одном документе, с одинаковым тегом) не могут быть заполнены.
Небольшая заметка: Лучше всего попытаться поймать if, если в вашем документе есть другие таблицы, которые не являются динамическими.
tables.ElementAt(f).Parent.Parent.GetFirstChild<SdtProperties>().GetFirstChild<Tag>().Val
убил бы их.