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就可以了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM