Questa documentazione è stata archiviata e non viene gestita.

Classe WindowInteropHelper

Aggiornamento: novembre 2007

Assiste l'interoperatività tra Windows Presentation Foundation (WPF) e il codice Win32.

Spazio dei nomi:  System.Windows.Interop
Assembly:  PresentationFramework (in PresentationFramework.dll)

public sealed class WindowInteropHelper
public final class WindowInteropHelper
public final class WindowInteropHelper
Impossibile creare direttamente un'istanza di questa classe in XAML.

I membri di questa classe consentono al chiamante di avere accesso all'oggetto HWND di Win32 e all'oggetto HWND padre di un WPF Window.  I controlli di protezione adeguati vengono eseguiti da questi membri.

Utilizzare questa classe quando un oggetto più specifico è basato sul proprio oggetto HWND.

Questa operazione risulta utile se è necessario ospitare una finestra di dialogo di WPF in un'applicazione Win32. Inizializzare WindowInteropHelper con un oggetto finestra di WPF per il dialogo. È quindi possibile ottenere l'handle (HWND) di finestra di WPF dalla proprietà Handle e specificare il proprietario per la WPF finestra con la proprietà Owner. Nell'esempio di codice seguente viene illustrato come utilizzare WindowInteropHelper quando ospita una finestra di dialogo di WPF in un'applicazione Win32.

WindowInteropHelper wih = new WindowInteropHelper(myDialog);
wih.Owner = ownerHwnd;
myDialog.ShowDialog();


Un altro scenario supportato da questa classe è l'ottenimento di un oggetto HwndSource da un oggetto WPFWindow. HwndSource attiva l'elaborazione diretta dei messaggi di Win32 tramite il metodo AddHook. Utilizzando HwndSource e AddHook invece di Window è ancora possibile gestire i messaggi che non hanno alcun equivalente o gestione in WPF. Creare un WindowInteropHelper con l'origine Window, quindi chiamare Handle su WindowInteropHelper per passare dall'oggetto HWND a HwndSource.

System.Object
  System.Windows.Interop.WindowInteropHelper

Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.

Windows Vista

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

.NET Framework

Supportato in: 3.5, 3.0
Mostra: