/// <summary> /// Initializes a new instance of the <see cref="PropertyPageProxy"/> class. /// </summary> /// <param name="parent">The parent.</param> /// <param name="propertyPage">The target property page.</param> internal PropertyPageProxy(SharpPropertySheet parent, SharpPropertyPage propertyPage) { // Set the target. Parent = parent; Target = propertyPage; // set the proxy reference in the property page. propertyPage.PropertyPageProxy = this; // Create the dialog proc delegate (as a class member so it won't be garbage collected). dialogProc = new DialogProc(WindowProc); callbackProc = new PropSheetCallback(CallbackProc); }
private void Cleanup() { // Destory the target. Target.Dispose(); // Destroy the host. User32.DestroyWindow(HostWindowHandle); // Clear the lot. Target = null; HostWindowHandle = IntPtr.Zero; }