Adicionar um escudo UAC a um botão e manter sua imagem de fundo?
Usando o C # e o .Net 4.0 em um aplicativo winforms: É possível adicionar a blindagem do UAC a um botão e reter a imagem de plano de fundo dos botões? Como?
Isso é o que estou usando no momento, mas remove a imagem ...
[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);
}
Obrigado!