整体结构布局
命令类
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;
}
}
}