В начале была только тьма и хаос. И вот пользователи закричали: «Все эти интерфейсы разные, и то, что один учит в одном, нельзя применить в другом. Они - зловоние наших ноздрей, и никто не может их соблюдать!»
Ученые из PARC услышали крики пользователей и изобрели современный графический интерфейс WYSIWYG. И они посмотрели и увидели, что пользовательский интерфейс был последовательным. И вырезать было в одном приложении, как было в другом, и так была паста и так далее. Все команды, Выйти и Помочь среди них, где на их назначенном месте. и это было хорошо.
Apple и Microsoft украли работу PARC, но сделали ее популярной, и это хорошо, и пользователи были счастливы, они могли вырезать и вставлять и нажимать на любую кнопку или элемент управления, зная, что в одном приложении они знали это в других.
И в течение многих лет такое положение дел продолжалось, и пользователи были довольны.
Но дизайнеры и разработчики программного обеспечения были в ужасе, разорвали и разорвали свою одежду и покрылись пеплом. Их программное обеспечение было простым в использовании, и пользователи знали, как его использовать. И их не было никакой разницы между кнопками, полосами прокрутки и меню, потому что они были стандартными, на вид и на ощупь. И меню в одном приложении выглядело как меню в другом приложении. И выделенный текст в одном приложении выглядит как выделенный текст в другом.
И дизайнеры, и разработчики, и действительно маркетологи, добились успеха. Adobe слушала их и изобрела Flash. И Microsoft действительно послушала их и изобрела Silverlight и WPF. И Apple сказала, что никто не будет делать Приложения для OS X, iPhone или даже iPad, но только через Cocoa, потому что, как сказал PARC. Но они были в значительной степени проигнорированы.
И снова хаос вернулся в мир.
Так что нет - вы не можете изменить цвет выделения стандартных элементов управления - включая собственные элементы управления EDIT и RichText. Они пришли из более раннего времени, когда такие вещи, как шрифт и цвет, использовались в графическом интерфейсе для стандартных целей, когда пользователь мог установить их, как они считают нужным.
Вы можете изменить цвет текста в элементе управления richedit, но цвет выделения является одной из этих пользовательских настроек, и хотя он может быть изменен с помощью подклассов, это намного больше работы, чем вызов SetTheSelectionColor из одной строки.