Condividi tramite


WindowInteropHelper.EnsureHandle Metodo

Definizione

Crea l'handle della finestra (HWND) se non è ancora stato creato.

public:
 IntPtr EnsureHandle();
[System.Security.SecurityCritical]
public IntPtr EnsureHandle ();
public IntPtr EnsureHandle ();
[<System.Security.SecurityCritical>]
member this.EnsureHandle : unit -> nativeint
member this.EnsureHandle : unit -> nativeint
Public Function EnsureHandle () As IntPtr

Restituisce

IntPtr

nativeint

Oggetto IntPtr che rappresenta l'handle della finestra (HWND).

Attributi

Commenti

Usare il metodo quando si desidera separare la EnsureHandle creazione di handle di finestra (HWND) dalla visualizzazione effettiva dell'oggetto gestito Window. Ciò è utile quando si dispone di un client di automazione in grado di eseguire le attività senza la necessità di visualizzare una finestra.

Se la finestra nativa non è ancora stata creata, questo metodo crea la finestra nativa, imposta la Handle proprietà e restituisce HWND. Se la finestra nativa è già stata creata, viene restituito l'handle della finestra nativa esistente.

Se la finestra nativa viene creata in seguito alla chiamata di questo metodo, viene generato l'evento SourceInitialized .

L'esecuzione di query sulla Handle proprietà dopo che il EnsureHandle metodo viene chiamato restituisce l'handle di finestra esistente. La struttura ad albero visuale non viene collegata alla finestra finché non viene chiamato il Show metodo .

La chiamata al EnsureHandle metodo più volte non crea nuovi handle di finestra. La chiamata al EnsureHandle metodo quando l'handle è già stato creato da una chiamata al Show metodo non crea un nuovo handle di finestra. Una finestra nativa viene creata solo quando non esiste alcun handle quando viene chiamato il EnsureHandle metodo .

Le proprietà della finestra impostate tramite API della finestra nativa tramite p/invoke potrebbero non essere visualizzate nelle API della finestra gestita. Ad esempio, se si imposta la finestra in primo piano usando il flag di MS_EX_TOPMOST nativo dopo la chiamata al EnsureHandle metodo, la Topmost proprietà non è garantita per riflettere l'impostazione nativa.

Si applica a