欢迎加入BIM行业开发交流1群 群号:711844216(满),二群群号:1016453207
背景
小伙伴们在做revit二次开发时,为了丰富开发内容,会有引入界面的需求。作为窗体程序开发,基本上有Winform与WPF两种界面,笔者推荐使用WPF。理由如下:
Winform Vs WPF
- Winform是上一代的界面技术,而WPF是较新的界面技术,在特效方面比Winform强很多
- Autodesk Revit团队推荐使用WPF
好了,下面开始介绍如何在revit中引入WPF界面。
开发环境:Vs2017,Revit2018,.Net框架4.5.2
方法
1.首先在VS中,新建一个WPF项目,如下图所示
2.删除这里的APP.config和App.xaml
3.在start项目中,添加一个类文件
4.在引用中添加RevitAPI与RevitAPIUI两个dll,
分别设置这两个dll属性为False
5.在刚才添加的类中,写下如下代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Autodesk.Revit.Attributes;
using Autodesk.Revit.DB;
using Autodesk.Revit.UI;
namespace start
{
[Transaction(TransactionMode.Manual)]
class WpfAddin : IExternalCommand
{
public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
{
MainWindow wpf = new MainWindow();//实例化主窗口类
wpf.ShowDialog();//展示界面
return Result.Succeeded;
}
}
}
6.在start项目上,右键,打开属性,将输出类型改为类库
7.然后对项目start右键,重新生成
得到编译后的dll文件 “E:\05研究\黑夜の骑士博客\如何在Revit中导入WPF界面\start\bin\Debug\start.dll”
8.在revit中,通过附加模块的外部工具,在Manual Model模式下,导入刚刚生成的dll文件
9.点击“Run”运行
10.我们的WPF界面就出来了哈。
注意事项
需要Revit二次开发全流程教学 的朋友可以联系我qq:1056295111
- 在建立项目时选择“WPF项目”,但是后面需要将其修改为“类库”;
- 在Revit中导入WPF方法较多,本文介绍的这种方法,简单易懂,可快速上手;
- WPF界面有了,想在里面添加什么,就要发挥小伙伴们充分的想象力了。
- 微信公众号关注“工程人的编程课堂”,获得最新行业资讯,以及更多编程干货。