I can't see an enum type of DynamicBlockReferenceParameter in AutoCAD .NET API. It may be missing from the API?
The following code snippet is used to change properties of a dynamic block. We should know exactly the parameter name to find in DynamicBlockReferenceProperty.PropertyName. We can find this name by checking the Properties pane of a dynamic block in AutoCAD. Just use AutoCAD to see all parameter names of a dynamic block to use in code.
DynamicBlockReferencePropertyCollection properties = blockReference.DynamicBlockReferencePropertyCollection;
for (int i = 0; i < properties.Count; i++)
{
DynamicBlockReferenceProperty property = properties[i];
if (property.PropertyName == "Position X")
{
property.Value = newValue;
}
}
I would like the class DynamicBlockReferenceProperty to have a new property named PropertyType that is an enum of all dynamic block parameters. So it will help developers to work easier without knowing PropertyName string and PropertyTypeCode number, that are not strong-typed and intuitive.
-Khoa