[MSCE/OPM C#] 在ElementSetTool中如何正确处理选择集?

在基于OpenPlant CE版的.net二次开发过程中,我定义了一个类继承自DgnElementSetTool,希望实现两个功能:

1.允许选择多个元素,允许单击,框选将元素加入选择集,按住Ctrl键单击、框选将已选择的元素从选择集中排除

2.通过代码访问DgnElementSetTool的选择集,并进行修改(添加、删除元素)

目前我已通过重载

WantAddtionalLocate(...) => true;

WantDynamics(...) => false;

WantAccuSnap(...) => false;

AllowDragSelect (...) => UsesDragSelect.Box;

GetAddtionalLocateNumRequired(...) => int.MaxValue;

实现了选择多个元素,但一旦按住Ctrl键单击已选中的元素(预期将元素从选择集中排除)程序就会崩溃,是否是某些函数也要相应重载?

另外我尝试通过DgnElementSetTool.ElementAgenda访问并修改选择集(调用ElementAgenda.Empty(true)或ElementAgenda.Insert(...)),但在此对象上调用的修改方法都没有效果,是否有特殊的调用方式?

请各位专家同仁指教,谢谢!

Parents Reply Children
No Data