VS2010 エディターの前景色は、1 つの場所ではなく、オプション フォーム内の多くの場所で設定されます。Resharper がインストールされている場合は、いくつかのフォアグラウンド プロパティも設定されます。VS2010 がこれを行う理由は、前景内の個々のアイテム (単語) が、選択されている場合でも、そのタイプ (コメント、値のタイプ、列挙型など) に応じて異なる色を表現できるようにするためです。つまり、VS2010 は、選択された一般的なテキストの色形式よりも、これらの特定の型の前景色に優先順位を適用します。
たとえば、[フォントと色] ダイアログを見ると、[ユーザー タイプ] のエントリに気付くでしょう。私の VS2010 では、その RGB 値は RGB(43, 145, 175) で、ティールのように見えます。その色を赤に変更すると、エディターの前景色のユーザー タイプが赤に変わり、選択領域があっても赤のままになります。
場合によっては、VS2010 は行にブレークポイントを適用するなど、前景色をオーバーライドします。私の VS2010 では、編集モードのときにブレークポイントが有効になり、行の用語に関係なく、前景色が白くなります。
選択したすべてのテキストの前景色をどのように変更するかという質問に答えるために、VS2010 はそのままではこれをサポートしていません。
hereに概説されているように、VS2010拡張機能を作成しました。サンプルコードをそのまま使用し、次の行を追加しました。
selectedText[EditorFormatDefinition.ForegroundBrushId] = Brushes.Green;
formatMap.SetProperties("Selected Text", selectedText);
...しかし、これは選択したテキストの前景色を緑に変更しませんでした。黒のままでした。これはおそらく、VS2010 WPF エディターが各形式に優先順位を使用し、1 つ以上の他の形式が選択されたテキストの前景色を上書きするためです。