c#-4.0之在 XML 功能区中以编程方式访问功能区控件

jillzhang 阅读:17 2024-11-24 20:56:43 评论:0

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

如果您使用功能区设计器创建功能区,则在后台代码中生成的类可以看到您放置在功能区上的所有控件。因此,如果我放置了一个名为“dropdown1”的 RibbonDropDown,我可以使用以下代码向其中添加一个项目:

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

但是,如果您使用功能区 XML 创建相同的功能区,则找不到 dropDown1 或 Factory(“当前上下文中不存在该名称”)。

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

请您参考如下方法:

可能有点晚了,但希望这对某人有所帮助。

我对同样的问题感到非常困惑。事实证明,您只能以字符串 ID 的形式访问这些控件,并且该模型对失效事件影响很大。因此,例如,当您通过 onAction 方法单击按钮时,您只有来自控件对象的发送者 ID,但是,在此事件处理程序中,您可以使其他控件无效并使用调用它们的事件

ribbon.InvalidateControl("MyCtl"); 

看看这个MS Lab ,它拥有启动和运行所需的一切


标签:C#
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号