zoukankan      html  css  js  c++  java
  • Revit二次开发,将插件按钮(Ribbon)变灰或者隐藏

    http://www.cnblogs.com/greatverve/archive/2012/03/30/revit-api-get-ribbon.html    博主:大气象

    http://www.cnblogs.com/chendongbky/p/6274690.html    博主: 苏州城外的微笑

    转载自以上两篇博客

    //得到Ribbon控件的值
    [TransactionAttribute(Autodesk.Revit.Attributes.TransactionMode.Manual)]
    public class cmdTest : IExternalCommand
    {
        public Result Execute(ExternalCommandData commandData, ref string messages, ElementSet elements)
        {
            UIApplication uiApp = commandData.Application;
            Document doc = uiApp.ActiveUIDocument.Document;
            Selection sel = uiApp.ActiveUIDocument.Selection;
    
            Transaction ts = new Transaction(doc, "http://revit.5d6d.com");
            ts.Start();
    
            RibbonPanel ribbonPanel = null;
            List<RibbonPanel> listPanel = commandData.Application.GetRibbonPanels("Tab名称");
            foreach (RibbonPanel panel in listPanel)
            {
                if (panel.Name == "RibbonPanel名称")//RibbonPanel的Name
                {
                    ribbonPanel = panel;
                    break;
                }
            }
            
           
            IList<RibbonItem> listItem = ribbonPanel.GetItems();
            foreach (RibbonItem item in listItem)
            {
                if (item.Name == "Ribbon名字")//Ribbon的Name属性
                {
                    item.Enabled = false;//false即为按钮变灰
                }
            } ts.Commit();
    return Result.Succeeded; } }

    如果是对按钮进行动态隐藏,只需将Enabled属性换成Visible就可以了。

  • 相关阅读:
    禁止在工作流设计器启动持续活动的重新编译
    设计流程 工作流
    workflow 工作流
    访问调度控制 时间控件
    如何:实现一个视图项目
    Python多线程之threading.Thread实现
    gcc 编译流程分析
    如何编写Makefile?
    linux 文件夹的颜色代表什么意思
    STL容器的迭代器失效的原因
  • 原文地址:https://www.cnblogs.com/wenqiang1266/p/7086250.html
Copyright © 2011-2022 走看看