Sto utilizzando SetWindowTheme e SendMessage per fare in modo che un listview .net assomigli ad un listview stile vista, ma il controllo .net ha ancora un bordo di selezione tratteggiato attorno all'elemento selezionato:Come rimuovere il bordo di selezione su un ListViewItem
elementi selezionati nel listview explorer non hanno quel confine intorno a loro. Come posso rimuoverlo?
Esplora risorse:
Edit: Soluzione:
public static int MAKELONG(int wLow, int wHigh)
{
int low = (int)LOWORD(wLow);
short high = LOWORD(wHigh);
int product = 0x00010000 * (int)high;
int makeLong = (int)(low | product);
return makeLong;
}
SendMessage(olv.Handle, WM_CHANGEUISTATE, Program.MAKELONG(UIS_SET, UISF_HIDEFOCUS), 0);
Sembra che questa proprietà è impostata su false per impostazione predefinita. – Ucodia
Mentre lo ShowFocusCues stesso non funzionava, il WM_CHANGEUISTATE elencato su quella pagina MSDN mi portava alla risposta giusta. Inviando un messaggio WM_CHANGEUISTATE con UISF_HIDEFOCUS sono stato in grado di eliminare il rettangolo di attivazione. – Telanor
@Telanor, Si prega di aggiornare la domanda con un codice di stub della soluzione – Joe