在学习revit制作下拉框时,需要分为三个步骤:

1.创建一个面板(panel)。

RibbonPanel panel10 = application.CreateRibbonPanel(Globals.DiagnosticsTabName, "图纸生成");
2.给面板添加组,实现下拉框的效果  。

AddPulldownButtonGroup1(panel10);

3.在组中添加单独的按钮。

 private void AddPulldownButtonGroup1(RibbonPanel panel)
{
if ( == )
{
PulldownButtonData group1Data = new PulldownButtonData("PulldownGroup1", "门窗");
PulldownButton group1 = panel.AddItem(group1Data) as PulldownButton;
BitmapImage largeimage41 = new BitmapImage();
largeimage41.BeginInit();
largeimage41.UriSource = new Uri(@"C:\Kingcarrier\icon\mengchuang.png");
largeimage41.DecodePixelWidth = ;
largeimage41.DecodePixelHeight = ;
largeimage41.EndInit();
group1.LargeImage = largeimage41;
PushButtonData itemData13 = new PushButtonData("itemName13", "插入单门", FileUtility.GetAssemblyFullName(), typeof(door).FullName);
PushButton item13 = group1.AddPushButton(itemData13) as PushButton;
item13.ToolTip = itemData13.Text; // Can be changed to a more descriptive text.
item13.Image = new BitmapImage(new Uri(@"C:\Kingcarrier\icon\报价清单.png"));
item13.LargeImage = new BitmapImage(new Uri(@"C:\Kingcarrier\icon\报价清单.png")); PushButtonData itemData131 = new PushButtonData("itemName131", "改门方向", FileUtility.GetAssemblyFullName(), typeof(changedoor).FullName);
PushButton item131 = group1.AddPushButton(itemData131) as PushButton;
item131.ToolTip = itemData131.Text; // Can be changed to a more descriptive text.
item131.Image = new BitmapImage(new Uri(@"C:\Kingcarrier\icon\报价清单.png"));
item131.LargeImage = new BitmapImage(new Uri(@"C:\Kingcarrier\icon\报价清单.png"));
group1.AddSeparator();
PushButtonData itemData132 = new PushButtonData("itemName132", "添加H件", FileUtility.GetAssemblyFullName(), typeof(addHtoWindow).FullName);
PushButton item132 = group1.AddPushButton(itemData132) as PushButton;
item132.ToolTip = itemData132.Text; // Can be changed to a more descriptive text.
item132.Image = new BitmapImage(new Uri(@"C:\Kingcarrier\icon\报价清单.png"));
item132.LargeImage = new BitmapImage(new Uri(@"C:\Kingcarrier\icon\报价清单.png"));
group1.AddSeparator();
PushButtonData itx1 = new PushButtonData("itemName1", "插入单窗", FileUtility.GetAssemblyFullName(), typeof(window).FullName);
PushButton it1 = group1.AddPushButton(itx1) as PushButton;
it1.ToolTip = itx1.Text; // Can be changed to a more descriptive text.
it1.Image = new BitmapImage(new Uri(@"C:\Kingcarrier\icon\报价清单.png"));
it1.LargeImage = new BitmapImage(new Uri(@"C:\Kingcarrier\icon\报价清单.png"));
group1.AddSeparator();
PushButtonData itx2 = new PushButtonData("itemName2", "插入连窗", FileUtility.GetAssemblyFullName(), typeof(twowindow).FullName);
PushButton it2 = group1.AddPushButton(itx2) as PushButton;
it2.ToolTip = itx2.Text; // Can be changed to a more descriptive text.
it2.Image = new BitmapImage(new Uri(@"C:\Kingcarrier\icon\报价清单.png"));
it2.LargeImage = new BitmapImage(new Uri(@"C:\Kingcarrier\icon\报价清单.png"));
}
panel.AddSeparator();

同样的在组中可以设计组的名称然后再去设置组中的每一个按钮,并且实现相应的功能。

Revit 命令添加下拉框的更多相关文章

  1. DateGridView中添加下拉框列并实现数据绑定、更改背景色

    1.添加下拉框 代码实现==> using System; using System.Collections.Generic; using System.Windows.Forms; names ...

  2. c# dataGridView cell添加下拉框

    应用场景: dataGridView需要某一个cell变成下拉框样式. 思路详解: dataGridVie添加固定格式的row. 代码: DataGridViewRow row = new DataG ...

  3. Excel中添加下拉框

    数据->数据验证->数据验证 设置—>允许下拉框中选择序列,来源中写下拉选项,每个选项之间用逗号隔开

  4. .net添加下拉框

    aspx文件 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="DropDownL ...

  5. jquery 动态添加下拉框 需要增加 煊染 selectmenu("refresh");

    若通过js动态选择下拉框的值必须刷新下拉框,例如:var selArray = $("select#sel");selArray[0].selectedIndex = 1;selA ...

  6. 为Ext添加下拉框和日期组件

    Ext.onReady(function(){ var config = { fields:['module'], data:[['新建'],['删除'],['增加']}; var store = n ...

  7. 在ALV界面添加下拉框

    1.在alv界面表单属性中设置 if wa_fieldcat-fieldname = 'YC_MARK'.              wa_fieldcat-edit = 'X'.           ...

  8. DataTables给每一列添加下拉框搜索

    $(document).ready(function() { $('#example').DataTable( { initComplete: function () { var api = this ...

  9. table中添加下拉框

    { file: 'usename', title: '下发用户', width:"20%", align: 'center', templet: function (d) { va ...

随机推荐

  1. 微信小程序生成二维码工具

    实现的效果 使用(非自适应) 完整代码请参考网址里https://github.com/tomfriwel/weapp-qrcode 页面wxml中放置绘制二维码的canvas: <canvas ...

  2. hadoop MapReduce

    简单介绍 官方给出的介绍是hadoop MR是一个用于轻松编写以一种可靠的.容错的方式在商业化硬件上的大型集群上并行处理大量数据的应用程序的软件框架. MR任务通常会先把输入的数据集切分成独立的块(可 ...

  3. js··BOM 浏览器对象模型

    1.window.open(url,ways) url 是打开的网页地址 ways 打开的方式 _self 2.window.close() 3.浏览器用户信息 Window.navigator 4. ...

  4. git push 不想把本地某个目录下文件上传的办法

  5. CF300E. Empire Strikes Back

    题目链接(是的我越来越懒了..) 题目大意及数据范围: 数据范围很大.“最小”二字让我们考虑二分,但是上界...不会爆long long让你写高精吧? 我们可以发现,∑ai一定满足条件,所以上界是1e ...

  6. 20165313 《网络对抗技术》 Kali安装

    一.目的要求 下载 安装 网络 共享 软件源 二.主要步骤 我主要是按照最新超详细虚拟机VMware安装Kali Linux 这个方法做的就没有步骤描述了. 安装结果图: 注意事项 安装过程中如果没有 ...

  7. I.MX 6UL与6ULL应用领域区别

  8. day03 文件操作

    目录 1.文件操作实例 2.文件常用操作 3.with模块操作文件 常用实例,把文件里面的内容读出来做成字典的形式在做成字列表展示. 1.精简版. lst = []f = open("fil ...

  9. Git使用之(pathspec master did not match any file(s) known to git)

    一 问题概述 今天在工作中遇到一个问题,使用很久的一个local git repository,里面只有develop分支,那么现在想将分支切换到master分支,问题来了,在切换到master分支时 ...

  10. 详解java定时任务---Timer篇

    一.简介      在java的jdk中提供了Timer.TimerTask两个类来做定时任务. Timer是一种定时器工具,用来在一个后台线程计划执行指定任务,而TimerTask一个抽象类,它的子 ...