WindowInteropHelper.EnsureHandle Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vytvoří HWND okna, pokud hwnd ještě nebyl vytvořen.
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
Návraty
nativeint
Představuje IntPtr HWND.
- Atributy
Poznámky
Metodu použijte, EnsureHandle pokud chcete oddělit vytváření popisovačů oken (HWND) od skutečného zobrazení spravovaného Windowobjektu . To je užitečné, když máte automatizačního klienta, který dokáže provádět své úkoly bez nutnosti zobrazení okna.
Pokud nativní okno ještě nebyl vytvořen, tato metoda vytvoří nativní okno, nastaví Handle vlastnost a vrátí HWND. Pokud už bylo nativní okno vytvořeno, vrátí se popisovač existujícího nativního okna.
Pokud je nativní okno vytvořeno v důsledku volání této metody, SourceInitialized je vyvolána událost.
Dotazování vlastnosti Handle po EnsureHandle volání metody vrátí existující popisovač okna. Vizuální strom není připojen k okně, dokud není volána Show metoda .
EnsureHandle Volání metody více než jednou nevytvoří nové popisovače okna. EnsureHandle Volání metody, pokud popisovač již byl vytvořen voláním Show metody nevytvoří nový popisovač okna. Nativní okno se vytvoří pouze v případě, že při zavolání EnsureHandle metody neexistuje žádný popisovač.
Vlastnosti okna, které se nastavují pomocí nativních rozhraní API oken prostřednictvím p/invoke, se nemusí zobrazit v rozhraních API spravovaných oken. Pokud například nastavíte okno tak, aby bylo nahoře pomocí nativního příznaku MS_EX_TOPMOST po EnsureHandle zavolání metody, není zaručeno, Topmost že vlastnost bude odrážet nativní nastavení.