Тема: Как отличить видимые и невидимые примитивы в динамическом блоке

Имеются динамические блоки с динамическим параметром VISIBILITY, при изменении которого скрываются определенные атрибуты блока. Подскажите как програмно выяснить какие атрибуты в конкретном динамическом блоке в данный момент видны.

Re: Как отличить видимые и невидимые примитивы в динамическом блоке

Если автор нашёл ответ на этот вопрос - прошу опубликовать решение. Очень много потратил время, но не нашёл ответ на эту задачу.

(изменено: Александр Ривилис, 2 сентября 2016г. 08:49:32)

Re: Как отличить видимые и невидимые примитивы в динамическом блоке

Пройтись по атрибутам (AttributeReference) конкретной вставки блока и проверить свойства Invisible и Visible. Если первое равно false, а второе true, то атрибут видим в данной вставке блока.
Если нужны подробности - прошу сюда: http://adn-cis.org/forum/

(изменено: Василий Черников, 2 сентября 2016г. 11:15:52)

Re: Как отличить видимые и невидимые примитивы в динамическом блоке

Благодарю.. Гениально и просто. Что касается остальных примитивов .В первые решение этой проблемы предложил Тони Танзилло. Вы были автором перевода этой статьи http://adn-cis.org/poluchenie-spiska-vi … bloke.html. К сожалению я не силён в C# и переложить код на VBA у меня не получилось.

(изменено: Александр Ривилис, 2 сентября 2016г. 11:17:13)

Re: Как отличить видимые и невидимые примитивы в динамическом блоке

Или я не понял твой вопрос, или ты выбрал не удачный пример для решения - это не твой случай. Тони предлагал найти все видимы примитивы не конкретной вставки блока, а по состоянии видимости даже не имея этой вставки - это значительно сложнее и средствами VBA недоступно).
Тебе нужно по вставке блока (BlockReference) получить его описание блока (Block) по имени Name (а не EffectiveName !!!) вставки блока. А затем пройтись по всем примитивам в коллекции блока и проверить их видимость (свойство Visible). Так что ничего расчленять не нужно.

(изменено: Василий Черников, 2 сентября 2016г. 11:22:21)

Re: Как отличить видимые и невидимые примитивы в динамическом блоке

Верно ..Так и сделал. Поэтому неверное решение в коментарии убрал, чтобы не вводить в заблуждение(пример был неудачным). Ещё раз спасибо, гениально и просто.