想要给用C#新建的直线添加一个“扩展”属性“线型参数”,如下图。下图的直线是从cad导入的,带“线型参数”。
默认的直线是没有这个线型参数的,如下图。
请问如何通过代码加到element上呢?
DGN文件中的线型分系统型(0~7)和自定义线型两大类。对于自定义线型就会自动出现这个“线型参数”属性。所以,您可以调用ElementPropertiesSetter下的SetLinestyle来设置一个Element的LineStyle为自定义线型中的某个名称,该函数的第二个参数就是LineStyleParameters。当然,该名称需要存在于您当前DGN中或线型库中。
MS学习资源:
MicroStation Wednesday视频分享
深入探讨MicroStation DGN基本概念系列
一步步学习MicroStation CE Addin开发
一步步学习MicroStation CE MDL开发
找到了这个属性,但是LineStyleParameters无法直接通过new初始化,请问需要通过什么方式新建一个LineStyleParameters呢?这个类中没有可直接调用的构造函数。
这个确实封装的确实不完善,不过有一个变通的方法就是您通过ElementPropertiesGetter获取一个现有元素的LineStyle可以获取一个这个类的实例,随便一个图形元素就可以,如下代码所示:
ElementPropertiesGetter eleProGet = new ElementPropertiesGetter(ele1); LineStyleParameters lineStyleParam = eleProGet.LineStyle;
Answer Verified By: 徐 明卉