Простите, что долго не отвечал.
Да, дело оказалось в неправильном блоке.
Перерисовал блок в соответствии с данной
статьейШирина и высота изменяются, но при первом же программном изменении размеров - перестает реагировать ручной метод (т.е. из пространства модели, если меняю параметр - то "фиг вам, называется"), если же блок вставлять "как есть", и уже потом вручную менять размер - то все в порядке.
Я так понимаю слетает какой-то слушатель события. Как подписаться/переписать этот слушатель?
Т.е. мне нужно, чтобы:
1. был динамический блок, который я импортирую из другого чертежа
2. изменялся программно сразу же, как я его вставил
3. имел параметр, который пользователь может сам изменить вручную (формат рамки)
Вот код, которым я меняю его параметр:
public void Resize()
{
foreach (DynamicBlockReferenceProperty obj in this.BRef.DynamicBlockReferencePropertyCollection)
{
if (obj.PropertyName != "Origin")
{
editor.WriteMessage(obj.PropertyName + "\n");
foreach (Object value in obj.GetAllowedValues())
{
editor.WriteMessage("Значение: " + value + "\n");
if (value.ToString() == "A" + format.index + " (" + ((format.Orientation == "WIDTH") ? "Width)" : "Height)"))
{
obj.Value = value;
}
}
}
}
}
И собственно сам блок во вложении