1. 程式人生 > >Revit二次開發新增按鈕

Revit二次開發新增按鈕

整體結構佈局 

命令類 

namespace HW
{
    [Transaction(TransactionMode.Manual)]
    class Cmd : IExternalCommand
    {
        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
        {
            TaskDialog.Show("Revit","Hello,World");
            return Result.Succeeded;
        }
    }
}

 

介面製作類 

namespace HW
{
    [Transaction(TransactionMode.Manual)]
    public class App : IExternalApplication
    {
        public Result OnShutdown(UIControlledApplication application)
        {
            return Result.Succeeded;
        }
        public Result OnStartup(UIControlledApplication application)
        {
            //新增Ribbon,pushbutton
            PushButton pushButton = application.CreateRibbonPanel("Ribbon名").AddItem(new PushButtonData("內部名", "Button名", Assembly.GetExecutingAssembly().Location, "HW.Cmd")) as PushButton;
            //指定圖片方式一 圖片生成操作要改為Resource
            pushButton.LargeImage = new BitmapImage(new Uri("pack://application:,,,/HW;component/Resources/para.png"));
            //指定圖片方式二
            pushButton.LargeImage = new BitmapImage(new Uri(Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "para.png")));
            return Result.Succeeded;
        }
    }
}