c# - 为大尺寸和正常尺寸的 xml 功能区按钮添加两个图像

标签 c# xml vsto ribbon

我在 Ribbon XML 上有一个按钮,带有这样的自定义图像

<group id="MyGroup">
<button id="buttonTest" size="large" getImage="GetCustomImage" label="Test"/>
</group>
public Bitmap GetCustomImage(Office.IRibbonControl control)
{
    return Resources.test; // test.png
}

但是当用户在快速访问工具栏上添加这个按钮时,按钮变成正常大小。 Office 调整图标大小,此后它看起来很难看。 如何为大尺寸 (32x32) 和普通 (16x16) 尺寸的按钮添加两个图像?

最佳答案

当按钮位于快速访问工具栏上时,是否会调用 GetCustomImage 方法? 如果是这样,那么按照您的要求做应该不会太难。您只需要知道按钮是在功能区中还是在 Q.A.T 中。

但是

如果那 工作,我不认为它可以做你所要求的。每个按钮只能关联 1 个图像和 1 个尺寸。

您可能做的是拥有 2 个按钮并切换哪一个可见。并且用户可以确保将 buttonNormal 添加到快速访问工具栏。我的意思是,这很丑陋,我不知道我是否会这样做。但如果丑陋的图标真的让您感到困扰,那就继续吧。

<group id="MyGroup">
    <button id="buttonLarge" size="large" image="largeImage" label="Test" getVisible="GetIsLargeButtonVisible"/>
    <button id="buttonNormal" size="normal" image="normalImage" label="Test" getVisible="GetIsNormalButtonVisible"/>
</group>

然后在 GetIsNormalButtonVisibleGetIsLargeButtonVisible 方法中,您可以隐藏和显示您想要的任何一个。

关于c# - 为大尺寸和正常尺寸的 xml 功能区按钮添加两个图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15397433/

相关文章:

c# - 更新或插入新值

java - Android 更改应用程序主题

javascript - 添加合格的 XML 元素不会继承命名空间 URI

excel - 将选定范围从 Excel 粘贴到 Word 文档

Office (Excel 2007) 加载项中的 WPF MVVM 复合应用程序

c# - 打开 powerpoint 演示文稿并隐藏窗口

c# - 字符串删除html

c# - 使用 WCF XML 配置在单个主机内托管 WCF 服务两次

c# - 谁能提供 SQLite "SetTimeout"的 C# 示例?

xml - 在单个 XPath 表达式中获取恰好引用两个其他元素的元素