2011-09-02 84 views
3

对于使用C#4.0编程Office加载项,Microsoft提供了两种不同的创建和/或修改功能区界面的方法:您可以使用Ribbon Designer或定义功能区布局Ribbon XML以编程方式在XML功能区中访问功能区控件

如果使用功能区设计器创建功能区,则在后面的代码中生成的类可以查看功能区上放置的所有控件。所以,如果我已经放在一个名为“dropdown1” RibbonDropDown,我可以使用下面的代码将项目添加到它:

RibbonDropDownItem item = Factory.CreateRibbonDropDownItem(); 
item.Label = submatrix.Name; 
item.Tag = submatrix; 
this.dropDown1.Items.Add(item); 

但是,如果您使用功能区XML创建相同的丝带,dropDown1或工厂AREN” t发现(“该名称在当前上下文中不存在”)。

有没有方法可以访问添加到代码中功能区XML定义功能区的项目?

+0

你有没有找到答案呢? –

回答

4

可能会有点晚,但希望这有助于某人。

我对这个问题完全感到困惑。事实证明,您只能以字符串ID的形式访问这些控件,并且该模型对无效事件很重要。因此,例如,当你通过的OnAction方法点击一个按钮,你只需要发送者的ID从控制对象,然而,在这个事件处理程序,您可以使用

ribbon.InvalidateControl("MyCtl"); 
称为无效的其他控件,并有他们的活动

看看这个MS Lab,它有你需要的一切来启动和运行

相关问题