在MSTN中已经添加了Itemtype属性给元素,目前想要做到是通过选择工具点选一个元素然后获取该元素的属性,尤其是ItemType中的属性内容,应怎样编写,有没有示例代码可以参考?我看了sdk内的example中的示例,但大多数都是写添加Itemtype内容到元素中,没有找到读取元素Itemtype的例子,最好是C#代码,谢谢
参考这个帖子:https://communities.bentley.com/communities/other_communities/chinafirst/f/microstation-projectwise/154703/msce-c-parametric-solid-itemtype/462361#462361,另外属性名中包含中文字符时,需要调用ECNameValidation.EncodeToValidName转换一下。
您好,这个文章中关于读取Itremtype内容的部分已经读懂了,还想问下如何获取鼠标点击时的点选元素?看了下DgnElementSetTool不过那个是C++的而且较为复杂,我只想获取使用Element Selection时选中的单个元素,不知道C#有没有合适的接口?学长说他之前看到过一个C#中,名称内含Selection的接口可实现,但全名他忘了
ElementAgenda eleAgen = new ElementAgenda(); SelectionSetManager.BuildAgenda(ref eleAgen); if (eleAgen.GetCount() < 1) return null; Element ele1 = eleAgen.GetEntry(0);
Answer Verified By: mengqi fu
这段代码可以实现动态获取吗?就是每次使用Element Selection功能点选元素时都能获取新的元素。目前我是通过keyin命令打开一个独立窗口,然后想实现的是通过Element Selection选择元素时都能将该元素的属性和ItemType信息读入到我写的窗口中,想要实现这个过程,点选的代码应该写在哪里?
入口类的基类AddIn下有一个SelectionChangedEvent的事件,在您的程序里边监听这个事件就行了,选择集发生变化时会触发这个事件。
好的好的,整个流程我基本理解了,万分感谢您的帮助