IExternalCommandAvailability的用法
来源:互联网 发布:人力资源管理专业 知乎 编辑:程序博客网 时间:2024/05/24 06:34
#region 实现IExternalCommandAvailability接口 /// Revit启动时按钮可用,打开文档后不可用 /// <summary> /// Revit启动时按钮可用,打开文档后不可用 /// </summary> /// <param name="applicationData"></param> /// <param name="selectedCategories"></param> /// <returns>true或false表示按钮是否可用</returns> public bool IsCommandAvailable(UIApplication applicationData, CategorySet selectedCategories) { return ((applicationData.ActiveUIDocument == null) ? true : false); } #endregion
最近在做Revit二次开发,遇到需要实现按钮是否可用的问题,查了一些资料发现Revit API中有接口IExternalCommandAvailability全完可以满足我的要求,并且可以根据自己的需要设置,比如,我想有这样一个按钮,Revit启动后不可用,当文档打开后也不可用,只有当某一按钮额可用时他才可用,类似这样的问题,我们就可以通过传参数或其他方法来控制按钮是否可用。比如传来的参数为_isAvailable(表示某一按钮是否可用,用true或false表示),则可以做如下操作:
#region 实现IExternalCommandAvailability接口 /// Revit启动时按钮不可用,打开文档后不可用,_isAvailable为true时可用 /// <summary> /// Revit启动时按钮不可用,打开文档后不可用,_isAvailable为true时可用 /// </summary> /// <param name="applicationData"></param> /// <param name="selectedCategories"></param> /// <returns>true或false表示按钮是否可用</returns> public bool IsCommandAvailable(UIApplication applicationData, CategorySet selectedCategories) { return (_isAvailable ? true : false); } #endregion你甚至可以不用考虑文档是否打开,当然也可以加上,哪一种情况满足你的要求你就选择哪一种情况,如:
return ((applicationData.ActiveUIDocument == null) && _isAvailable ? true : false);
- IExternalCommandAvailability的用法
- Revit开发IExternalCommandAvailability的使用
- ?的用法
- ?的用法
- ---" ~ " 的用法---
- ---" ~ " 的用法---
- ~ 的用法
- 的用法
- ##的用法
- ##的用法
- 的用法
- ${ }的用法
- ##的用法
- ${ }的用法
- "->"的用法
- ${ }的用法
- >>的用法
- &的用法
- struts2.0的工作原理
- 读完《大数据时代》的一点儿心得
- asdsa
- 路由器的工作原理与不安全的特性--视频笔记
- Android 基本Animation
- IExternalCommandAvailability的用法
- zoj 3720
- 基于51单片机的电子琴
- VC中对话中实现右键菜单的状态控制
- C# winform 右下角弹出窗口结果
- 在SQL Server2008R2中附加数据库失败
- 三种东西永远不要放到数据库里
- C++中的资源管理
- G-Sensor 8452驱动及相关