2016-07-15 114 views
0

是否有方法可以确定用户正在与属性选项板的类型选择器进行交互?属性选项板 - 类型选择器事件

我看到这些日记条目:

“0:<不必要嵌套; d:\日出\ 2016_px64 \源\的Revit \ desktopmfc \ UI \ PropertiesPaletteView.cpp; 1741; ID_CHANGE_SYMBOL; N ++ EB(NB); '0:<可附加opton; - ; d:\ sunrise \ 2016_px64 \ source \ revit \ desktopmfc \ ui \ PropertiesPaletteView.cpp; 1144; IDS_MODIFY_TYPE_ATTRIB; N - OB(NAB);

但是还没有足够的线索告诉我如何得知这个事件。

杰夫

回答

1

我不相信从用户界面的角度来看有任何直接的通知。

如果用户进行修改的元素,包括但不限于具体的UI交互,可以通过挂钩到动态模型更新框架DMU通知:只是

http://thebuildingcoder.typepad.com/blog/about-the-author.html#5.31

+0

我的挑战是知道类型已修改如果属性面板用于更改参数值,我不关心。当他们改变只有两个导管的类型时,不包括弯头等导管配件,这是一个问题。 – JGeerWM

+0

类型也有参数,你也许想要查看ElementTypeDuplicating和ElementTypeDuplicated事件,并且t他的帖子在Revit API讨论区:http://forums.autodesk.com/t5/revit-api/how-to-track-family-type-duplicate-and-reset-eg-keynote/mp/6443898 –

+0

谢谢对于这个建议。我已经实现了ElementTypeDuplicating事件处理程序,但是在使用属性选项板中的类型选择器下拉列表时不会触发它。 – JGeerWM

0

我注意到悄悄话你更多的背景资料:

“我想,当有人使用类型选择改变在Revit管道的类型在属性选项板检测...

这种方法的问题是,用户可能会改变2管道的类型,但这会导致1管道配件未修改,并且不兼容。

使用“修改”功能区中的“更改类型”命令可提供最佳结果。

我想检测用户是否正在与此对话框交互并给出一些警告。这可能吗?”

同样,我不认为你绝对可以区分不同的元素如何被修改,或者通过什么UI手段,但你可以使用DMU来确定一些元素已被修改,并如何,并发出警告,甚至纠正如果你认为它是不适当的修改