【MSCE C++或C#】 ECSchema的定义必须要放到 OpenRoadsDesigner\ECSchemas\Dgn 中才能在属性面板中显示

通过代码导入 AAA.01.00.ecschema.xml,并构造一个EC实例数据赋予到一个Element中,在Element中可以读取到对应的EcInstance,但是在属性面板中却看不到此元素的对应EC属性。经过测试,需要将此 AAA.01.00.ecschema.xml 放到 \OpenRoadsDesigner\ECSchemas\Dgn\ 文件夹下,然后再打开此 DgnFile,就可以在属性面板中看到 对应 Element 下的 EC属性了。

但是有些情况下好像又没有这样的限制。

请问一下,将 AAA.01.00.ecschema.xml 放到 \OpenRoadsDesigner\ECSchemas\Dgn\  中是不是在属性面板中显示的常规要求,如何实现 EC属性在面板中的自由显示而不用考虑  AAA.01.00.ecschema.xml 的位置。

Parents Reply
  • 下面代码是通过xml文件去加载schmea文件,其中schemaFile变量就是schema文件的完整路径,您可以测试下。:

    SchemaReadStatus status;
            status = DgnECManager::GetManager().ReadSchemaFromXmlFile(s_schema, schemaFile.c_str(), dgnfile);
            if (!status)
                SchemaImportStatus importStatus = DgnECManager::GetManager().ImportSchema(*s_schema, *dgnfile, false);
    
            DgnECManager::GetManager().UpdateSchema(*s_schema, *dgnfile, false);

Children
No Data