La mia applicazione è progettata per funzionare quasi interamente attraverso un elemento della barra delle applicazioni di Windows 7 con l'uso di miniature e jump list. So che posso creare facilmente un Form
e semplicemente nasconderlo, ma questo sembra eccessivo. Inoltre, mi piacerebbe giocare con lo NativeWindow
il più possibile, perché non l'ho mai usato prima.Mostra una voce della barra delle applicazioni con una finestra nativa
In sostanza, ho una classe chiamata RootWindow
che deriva da NativeWindow
che gestirà i tasti di scelta rapida e, si spera, tutto il resto. Non ho bisogno di una finestra visibile, ma semplicemente qualcosa per elaborare i messaggi della finestra e fornire un elemento della barra delle applicazioni a cui posso allegare miniature e jump list.
Esiste qualche tipo di opzione speciale CreateParams
Devo passare a CreateHandle
? O sono sfortunato?
EDIT: Beh, è stato più facile di quanto pensassi, anche se non è esattamente quello che voglio. Una volta passato l'handle di NativeWindow
all'API ShowWindow
, veniva visualizzato l'elemento della barra delle applicazioni. Tuttavia, mostra anche una finestra nell'angolo in alto a sinistra dello schermo. C'è un modo per sbarazzarsi di quella finestra mentre mostra ancora l'elemento della barra delle applicazioni?
public class RootWindow : NativeWindow {
public const int SW_SHOWNOACTIVATE = 4;
[DllImport("User32.dll")]
private static extern int ShowWindow(IntPtr hWnd, short cmdShow);
public RootWindow() {
CreateHandle(new CreateParams());
ShowWindow(this.Handle, SW_SHOWNOACTIVATE);
}
}
Cosa succede se si nasconde la finestra? (Ad esempio, chiama ShowWindow (hwnd, SW_HIDE) –
L'elemento della barra delle applicazioni scompare. –