3

我有一个使用 VSTO 创建的 Outlook 加载项。使用功能区设计器,我创建了一个带有三个按钮的选项卡。(环境:Outlook 2010、.NET 4.0、VSTO 最新运行时

当按下其中一个按钮时,会打开一个无模式对话框。只要用户正在处理此对话框,我不希望他能够再次按下按钮。所以基本上我想让按钮变灰,直到对话框关闭。我怎样才能做到这一点?

无论出于何种原因,在按钮单击处理程序中,如果我这样做this.button1.enabled = false;,它就无法正常工作。我是否错过了有关丝带工作方式的一些信息。

谢谢

4

1 回答 1

2

IRibbonUI.InvalidateControl(controlID)您需要使用or重新渲染控件IRibbonUI.Invalidate()。有关如何动态更新 Fluent UI的信息,请参阅 MDSN 以供参考。这样做是出于性能原因,以便您可以更改所有 Fluent UI 设置,然后一次重新渲染所有控件更改。但是,如果您只更改一个 UI 元素(如您所指出的),这似乎令人困惑且不必要。

于 2011-12-15T15:04:33.357 回答