Dodaj tarczę UAC do przycisku i zachowaj jego obraz tła?

Używanie C # i .Net 4.0 w aplikacji winform: Czy można dodać osłonę UAC do przycisku i zachować obraz tła przycisków? W jaki sposób?

Właśnie tego używam obecnie, ale usuwa obraz ...

[DllImport("user32.dll")]
public static extern int SendMessage(IntPtr hWnd, uint Msg, int wParam, int lParam);

public static void UACToButton(Button button, bool add)
{
    const Int32 BCM_SETSHIELD = 0x160C;
    if (add)
        {
        // The button must have the flat style
        button.FlatStyle = FlatStyle.System;
        if (button.Text == "")
        // and it must have text to display the shield
            button.Text = " ";
            SendMessage(button.Handle, BCM_SETSHIELD, 0, 1);        
        }
        else
            SendMessage(button.Handle, BCM_SETSHIELD, 0, 0);    
}

Dzięki!

questionAnswers(2)

yourAnswerToTheQuestion