Вы не можете сделать это с простым CEdit, вам нужно переопределить несколько битов.
Реализуйте свой собственный обработчик ON_WM_CTLCOLOR_REFLECT, а затем верните свой цветной CBrush в обработчик:
(примерно, вам нужно поместить обычное управление ресурсами, помните, чтобы удалить кисть в деструкторе)
class CColorEdit : public CEdit
{
....
CBrush m_brBkgnd;
afx_msg HBRUSH CtlColor(CDC* pDC, UINT nCtlColor)
{
m_brBkgnd.DeleteObject();
m_brBkgnd.CreateSolidBrush(nCtlColor);
}
}