如何更改 VSTO 插件功能区的 KeyTip 属性?
How do you change the KeyTip property of a VSTO AddIn ribbon?
我正在尝试更改我创建的 RibbonTab 对象的 KeyTip 属性。当我在 Excel 中 运行 我的插件时,它显示 KeyTip 是 "X" 而不是 "JJJ"。
如果我在属性 window 中将它更改为 "JJJ" 它工作正常但我想了解为什么我不能这样更改它。
我需要做什么才能让 RibbonTab.KeyTip 属性 加载为 "JJJ"?
(仅供参考,这是我的第一个项目,所以我还在学习)
谢谢,
Imports Microsoft.Office.Tools.Ribbon
Public Class Ribbon1
Private Sub Ribbon1_Load(ByVal sender As System.Object, ByVal e As RibbonUIEventArgs) Handles MyBase.Load
tabRibbon1.KeyTip = "JJJ"
End Sub
The Fluent UI(又名 Ribbon UI)从一开始就是静态的。当加载项 return 是 UI 标记(由功能区设计器生成或只是原始 XML 标记)时,您可以仅在启动时设置一次 keytip
属性.
您也可以考虑使用 getKeyTip
回调,它允许动态评估键盘快捷键。 IRibbonUI
接口的 Invalidate 方法使功能区用户界面的所有控件的缓存值无效。您可以使用 COM 加载项中的回调过程自定义功能区 UI。对于加载项实现的每个回调,都会缓存响应。例如,如果外接程序编写器为按钮实现 getImage
回调过程,调用该函数一次,加载图像,然后如果需要更新图像,则使用缓存图像而不是调用步骤。此过程保持原位,直到加载项使用 Invalidate
方法发出缓存值无效的信号,此时再次调用回调过程并缓存 return 响应。然后,加载项可以通过调用 Refresh
方法强制立即更新 UI。例如:
Dim MyRibbon As IRibbonUI
Sub MyAddInInitialize(Ribbon As IRibbonUI)
Set MyRibbon = Ribbon
End Sub
Sub myFunction()
MyRibbon.Invalidate() ‘ Invalidates the caches of all of this add-in’s controls
End Sub
您可能还会发现 IRibbonUI
接口的 InvalidateControl 方法很有帮助。它使功能区用户界面上单个控件的缓存值无效。
在以下系列文章中阅读有关功能区的更多信息UI:
- Customizing the 2007 Office Fluent Ribbon for Developers (Part 1 of 3)
- Customizing the 2007 Office Fluent Ribbon for Developers (Part 2 of 3)
- Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)
和
我正在尝试更改我创建的 RibbonTab 对象的 KeyTip 属性。当我在 Excel 中 运行 我的插件时,它显示 KeyTip 是 "X" 而不是 "JJJ"。
如果我在属性 window 中将它更改为 "JJJ" 它工作正常但我想了解为什么我不能这样更改它。
我需要做什么才能让 RibbonTab.KeyTip 属性 加载为 "JJJ"?
(仅供参考,这是我的第一个项目,所以我还在学习)
谢谢,
Imports Microsoft.Office.Tools.Ribbon
Public Class Ribbon1
Private Sub Ribbon1_Load(ByVal sender As System.Object, ByVal e As RibbonUIEventArgs) Handles MyBase.Load
tabRibbon1.KeyTip = "JJJ"
End Sub
The Fluent UI(又名 Ribbon UI)从一开始就是静态的。当加载项 return 是 UI 标记(由功能区设计器生成或只是原始 XML 标记)时,您可以仅在启动时设置一次 keytip
属性.
您也可以考虑使用 getKeyTip
回调,它允许动态评估键盘快捷键。 IRibbonUI
接口的 Invalidate 方法使功能区用户界面的所有控件的缓存值无效。您可以使用 COM 加载项中的回调过程自定义功能区 UI。对于加载项实现的每个回调,都会缓存响应。例如,如果外接程序编写器为按钮实现 getImage
回调过程,调用该函数一次,加载图像,然后如果需要更新图像,则使用缓存图像而不是调用步骤。此过程保持原位,直到加载项使用 Invalidate
方法发出缓存值无效的信号,此时再次调用回调过程并缓存 return 响应。然后,加载项可以通过调用 Refresh
方法强制立即更新 UI。例如:
Dim MyRibbon As IRibbonUI
Sub MyAddInInitialize(Ribbon As IRibbonUI)
Set MyRibbon = Ribbon
End Sub
Sub myFunction()
MyRibbon.Invalidate() ‘ Invalidates the caches of all of this add-in’s controls
End Sub
您可能还会发现 IRibbonUI
接口的 InvalidateControl 方法很有帮助。它使功能区用户界面上单个控件的缓存值无效。
在以下系列文章中阅读有关功能区的更多信息UI:
- Customizing the 2007 Office Fluent Ribbon for Developers (Part 1 of 3)
- Customizing the 2007 Office Fluent Ribbon for Developers (Part 2 of 3)
- Customizing the 2007 Office Fluent Ribbon for Developers (Part 3 of 3)
和