Como tornar um controle CStatic (MFC) transparente?

aplicativo @My possui uma caixa de diálogo inicial com uma imagem que preenche toda a caixa de diálogo. Além disso, há um controle CStatic, que exibe algumas informações variáveis para o usuário. Tornei o controle CStatic transparente com o seguinte código:

HBRUSH CStartbildDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
    if(pWnd->GetDlgCtrlID() == IDC_STATIC_INFO)
    {
        pDC->SetBkMode(TRANSPARENT);
        return reinterpret_cast<HBRUSH>(::GetStockObject(NULL_BRUSH));
    }
    else
        return CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
}

Quando altero o texto do controle estático comGetDlgItem(IDC_STATIC_INFO)->SetWindowText, o novo texto se sobrepõe ao texto antigo (o texto antigo não é excluído). Tentei repintar o plano de fundo antes de chamarSetWindowText imagem comGetDlgItem(IDC_STATIC_BILD)->Invalidate(), mas nenhum texto informativo é exibido (nem o antigo nem o novo

Você sabe como posso tornar o controle estático transparente, para que eu também possa substituí-lo por um novo text

Obrigado pela ajuda

Solução Método 2 (adaptado) do codeproject-link da Sanja trabalhou para mim.

GetDlgItem(IDC_STATIC_INFO)->SetWindowText(tmp);
CRect rect;
GetDlgItem(IDC_STATIC_INFO)->GetWindowRect(&rect);
ScreenToClient(&rect);
InvalidateRect(&rect);
UpdateWindow();

questionAnswers(2)

yourAnswerToTheQuestion