Change text backgroundcolor in Word
c#, office-addins, office-interop, word-2007
Solution
Use ColorTranslator
Range r = this.Application.ActiveDocument.Range();
r.Text = "blabla";
r.Font.Shading.BackgroundPatternColor =(WdColor)ColorTranslator.ToOle(0, 214, 227,188);
Problem
the situation: - .net 3.5 - c# or vb.net(also tested) - word 2007 add-in I'm trying to set the Background Color of the text to a custom rgb color. The code is the following: ``` Range r = this.Application.ActiveDocument.Range(); r.Text = "blabla"; r.Font.Shading.BackgroundPatternColor =(WdColor) Color.FromArgb(0, 214, 227,188).ToArgb(); ``` At first it seems to work, except that the color is not the right one. It seems that whenever I set a custom color, it changes it to an existing WdColor constant. Having a look at the doc, it says : Returns or sets the 24-bit color that's applied to the background of the Shading object. Can be any valid WdColor constant or a value returned by Visual Basic's RGB function. So, my question is: does anybody has an idea of how it's supposed to work? Thanx