localize o suplemento VSTO de acordo com o idioma do produto de escritório

Estou desenvolvendo um suplemento VSTO e quero que ele seja localizado de acordo com a versão do idioma do produto de escritório. Em teoria, é assim que se faz:

int lcid = Application.LanguageSettings.get_LanguageID(Office.MsoAppLanguageID.msoLanguageIDUI);
System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo(lcid);

Para que isso funcione, eu precisoApplication para ser inicializado, é claro. Portanto, o primeiro ponto em que eu posso executar esse código está no manipulador de eventos Startup. Neste ponto, no entanto,CreateRibbonExtensibilityObject() já foi chamado, pelo menos o título da minha guia da faixa de opções personalizada será exibido no idioma do Windows, que pode ser diferente. Na classe da faixa de opções, tenho um manipulador para o evento onLoad, onde armazeno uma instância deIRibbonUI para uso posterior. Eu poderia entregar essa instância para a classe addin e deixá-la chamarIRibbonUI.Invalidate() nele. Mas isso parece um pouco estranho - criar uma fita apenas para invalidá-la alguns microssegundos depois. Então, eu me pergunto - e pergunto aqui - se existe uma maneira mais elegante de localizar a faixa de opções de um suplemento vsto de acordo com a versão em idioma do produto de escritóri

(Eu tenho vistoesta pergunta semelhante, mas a abordagem oferecida lápor esta resposta parece ainda pior para mim.)

questionAnswers(1)

yourAnswerToTheQuestion