繁体   English   中英

如何在C#Word VSTO加载项中使用功能区XML自定义快速访问工具栏(QAT),同时仍允许用户随后修改QAT?

[英]How to Customize Quick Access Toolbar (QAT) Using Ribbon XML in C# Word VSTO Add-In WHILE STILL Allowing User to Subsequently Modify the QAT?

我正在使用Visual Studio 2010创建VSTO Word 2007 C#加载项。我想将控件添加到Word的快速访问工具栏(QAT),以便用户意识到这些控件公开的功能(它们替换了内置的Word功能,即我要使用功能区XML来自定义功能区,因此为了向QAT添加控件,我必须使用<ribbon startFromScratch="true"> 不幸的是,这样做会使用户无法通过添加他们想在此处看到的控件来进一步自定义QAT。 (“自定义快速访问工具栏”下拉菜单将所有可以添加的命令显示为灰色,“更多命令”按钮也显示为灰色。)这样做还可以删除用户先前可能拥有的QAT中的所有控件。为了他们的方便。

我用来重现此问题的功能区XML是:

<?xml version="1.0" encoding="UTF-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="Ribbon_Load">
  <ribbon startFromScratch="true">
  </ribbon>
</customUI>

我想知道的是:

1)在将我自己的控件添加到QAT之后,是否有一种方法允许用户修改QAT? (理想情况下,我会保留用户以前的QAT自定义设置。)或者,

2)还有另一种方法可以将我的控件添加到QAT中,该控件不会删除用户的自定义设置并允许用户随后修改QAT吗?

谢谢!

我认为我要采用的方法是修改位于(对于WinXP)用户的自定义QAT文件:

C:\\ Documents and Settings \\ Administrator \\ Local Settings \\ Application Data \\ Microsoft \\ Office \\ Word.qat

但是,我还没有时间实现,所以我不确定在Word锁定文件之前还是在Word加载之前,我是否能够修改文件。 也许我可以使Word重新加载它。

如果使用startFromScratch="true" ,将始终遇到此问题。 如果您要覆盖诸如撤消/重做之类的功能,为什么不使用功能来覆盖这些按钮呢? 在Office Fluent功能区上临时重新使用命令

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM