Я использую объектную модель Word 2007 для управления таблицами. Всякий раз, когда я читаю свойства Shading
или Borders
объекта ConditionalStyle
для стиля таблицы (используя VBA или C #), он сбрасывает применяемые условные стили таблицы в строку заголовка, полосатые строки и первый столбец и очищает все форматирование на уровне таблицы (границы и заливка).
Это происходит независимо от того, получаю ли я доступ к ConditionalStyle
через свойство Style
таблицы или из коллекции Style
документа.
Чтобы воспроизвести проблему, создайте документ Word 2007, к которому применена таблица с некоторым форматированием (границы или затенение), выберите любую часть таблицы и выполните следующий код в Immediate Window VBA:
print Selection.Tables(1).Style.Table.Condition(1).Shading.BackgroundPatternColor
Таблица будет сброшена, как описано выше.
Могут ли другие люди воспроизвести эту проблему в своей среде? (Я воспроизвел его в Windows 7 и Windows Server 2003, используя Word 2007 SP1 и SP2)
Кто-нибудь может догадаться, почему это происходит?
Может кто-нибудь найти обходной путь для чтения Затенения?