c# - 访问 IRibbonExtensibility 类中的另一个功能区元素

标签 c# vsto

我有一个项目,我在其中使用 Office.IRibbonExtensibility 继承。我遇到的问题是我的项目要求我在功能区上按下按钮时“取消选中”复选框。 据我所知,只有您当前选择的控件可以通过按钮按下处理程序的 Office.IRibbonControl 属性在代码中访问。 所以我的问题是,如何在基于 XML 的 VSTO 项目中访问按钮单击事件中的复选框元素?

最佳答案

试试这段代码

Ribbon.xml

<?xml version="1.0" encoding="UTF-8"?>
<customUI onLoad="Ribbon_Load" xmlns="http://schemas.microsoft.com/office/2009/07/customui">
    <ribbon>
        <tabs>
            <tab idMso="TabAddIns">
              <group id="group1" label="group1">
                <button id ="btnTest" size="large" label="TestButton" onAction="btnTest_Click"/>
                <checkBox id ="chkTest" label="TestCheckbox" getPressed="chkTest_pressed" />
              </group>
            </tab>
        </tabs>
    </ribbon>
</customUI>

Ribbon.cs

private bool isChecked = false;
public void btnTest_Click(IRibbonControl ribbon)
{
    isChecked = true;
    this.ribbon.Invalidate();
}
public bool chkTest_pressed(IRibbonControl ribbon)
{
    return isChecked;
}

关于c# - 访问 IRibbonExtensibility 类中的另一个功能区元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18487526/

相关文章:

c# - 将 Outlook 电子邮件存储在 Microsoft SQL Server 数据库中

c# - VSTO Addin for Outlook 2010 中的自定义功能区不显示

c# - 在 C# 中保存为事件

c# - C# 中的替换和 Java 中的 replaceAll

c# - 在 EF 6 中使用 .Contains()

C# 相当于 Java 的 DigestUtils.md5Hex(String)?

c# - 在对象初始值设定项中迭代列表

c# - 以实际大小导出 PowerPoint 形状

C# VSTO 展望 2007 : How to show contact by EntryID

c# - Win32 API GetMenuItemInfo 仅返回项目文本的第一个字符