Revit调用winform
来源:互联网 发布:淘宝app里面是h5吗 编辑:程序博客网 时间:2024/06/08 01:38
//以下代码写在revit的class中是为了在revit 调用API中能找到对应的方法:cmdShowForm 和 cmdFromForm
using Autodesk.Revit.Attributes;
using Autodesk.Revit.DB;using Autodesk.Revit.DB.Events;
using Autodesk.Revit.ApplicationServices;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using DB = Autodesk.Revit.DB;
using Autodesk.Revit.UI;
namespace ZSTCRevit
{
[Transaction(TransactionMode.Manual)]
[Regeneration(RegenerationOption.Manual)]
public class cmdShowForm : IExternalCommand
{
public Result Execute(ExternalCommandData cmdData, ref string msg, ElementSet elements)
{
FrmCmd frmCmd = new FrmCmd(cmdData, msg, elements);
frmCmd.Show();
return Result.Succeeded;
}
}
//在窗体里执行Revit命令
[Transaction(TransactionMode.Manual)]
[Regeneration(RegenerationOption.Manual)]
public class cmdFromForm : IExternalCommand
{
public Result Execute(ExternalCommandData cmdData, ref string msg, ElementSet elements)
{
string version = cmdData.Application.Application.VersionBuild;
version += "\n" + cmdData.Application.Application.VersionName;
version += "\n" + cmdData.Application.Application.VersionNumber;
TaskDialog.Show("info", version);
return Result.Succeeded;
}
}
}
//以下代码是写winform中 ,当然了要先建立一个winform
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using DB = Autodesk.Revit.DB;
namespace ZSTCRevit
{
public partial class FrmCmd : Form
{
Autodesk.Revit.UI.ExternalCommandData cmdDataForm;
string msgForm;
DB.ElementSet elementsForm = new DB.ElementSet();
public FrmCmd()
{
InitializeComponent();
}
public FrmCmd(Autodesk.Revit.UI.ExternalCommandData cmdData, string msg, DB.ElementSet elements)
{
InitializeComponent();
cmdDataForm = cmdData;
msgForm = msg;
elementsForm = elements;
}
//以下是测试在form中增加一些数据。
private void Form1_Load(object sender, EventArgs e)
{
listBox1.Items.Add("param1");
listBox1.Items.Add("param2");
}
private void button1_Click(object sender, EventArgs e)
{
cmdFromForm fromForm = new cmdFromForm();
fromForm.Execute(cmdDataForm, ref msgForm, elementsForm);
}
}
}
- Revit调用winform
- Revit开发之调用Revit命令的另一种方法
- 编程调用Revit自己提供的命令
- Revit开发调用UI上的命令
- 编程调用Revit自己提供的命令
- Revit API进阶之调用Revit命令、外部命令、其他插件按钮、右键菜单命令...
- winform(C#)调用dll
- Winform异步调用WebService
- winForm调用摄像头
- winform调用WCF 笨
- c# winform 调用皮肤
- winform 调用 webservice
- winform调用config文件
- winform调用dos命令
- winform(C#)调用dll
- c# WinForm调用控制台
- winform调用javascript
- Winform 动态调用WebService
- 7.0权限处理
- 记录PHP编码规范
- wamp下开启https双向验证
- Mac OS 使用笔记
- git
- Revit调用winform
- string的正则表达式
- flask1
- mysql innodb 行锁解锁后出现1213 死表现象 Deadlock found when
- guava库
- solr入门
- QT获取字符串的像素的宽与高
- 最新微信小程序,请求第三方api时,无法加载数据报400,解决
- oracle用户权限管理以及profile应用