Сообщество программистов Autodesk в СНГ
ADN Club => Revit API => Тема начата: Пашин Евгений от 25-05-2016, 08:58:21
-
Добрый день, коллеги!
Столкнулся с задачей создания параметров в семействах, которые создаются вручную, а нередактируемость параметров (в интерфейсе) уже задавать программно.
Подскажите где можно глянуть.
Кроме USERMODIFIABLE (0/1) в справке ничего не нашёл или плохо искал.
Заранее благодарю!
UserModifiable = false
Visible = true
С набегу не сработало... может что не так делаю?
-
Евгений, т.е. параметр создается при создании/редактировании семейства. Затем, с помощью API, нужно сделать этот параметр не редактируемым. Верно?
-
Верно?
Да: сначала найти (с этим проблем нет), а затем сделать его UserModifiable=False (тут я видимо что-то не-до-понимаю) :)
-
Свойство UserModifiable то верное. Только вот оно только для чтения. Нельзя изменить возможность редактирования уже существующего параметра. Это можно указать лишь при создании
-
Можно это обойти? Очень нужно.
-
Для начала нужно уточнить, речь идет о параметре семейства в редакторе семейств или об общем параметре семейства в проекте?
-
Именно о параметре семейства в редакторе семейств.
-
Евгений, я вижу только один вариант - удаление старого параметра и создание нового, не редактируемого параметра, с копированием значений.
Есть метод FamilyManger.ReplaceParameter, который судя по описанию, сделает как раз то что нужно. Но я им не разу не пользовался, не могу со 100% уверенностью сказать, что он перенесет значение параметров. По идее должен, иначе для чего он тогда нужен вообще.
-
Спасибо, я попробую и надеюсь, что при удалении параметра не произойдёт какой-либо ошибки в модели :)