Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Framework / System / Windows / Interop / WindowInteropHelper.cs / 1 / WindowInteropHelper.cs
//---------------------------------------------------------------------------- // // File: WindowInteropHelper.cs // // Description: Implements Avalon WindowInteropHelper classes, which helps // interop b/w legacy and Avalon Window. // // Created: 05/06/03 // // Copyright (C) 2001 by Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Windows; using System.Windows.Interop; using System.Security; using System.Security.Permissions; using System.Diagnostics; using MS.Internal; using MS.Internal.PresentationFramework; // SecurityHelper using MS.Win32; namespace System.Windows.Interop { #region class WindowInteropHelper ////// Implements Avalon WindowInteropHelper classes, which helps /// interop b/w legacy and Avalon Window. /// public sealed class WindowInteropHelper { //--------------------------------------------------- // // Constructors // //--------------------------------------------------- #region Constructors ////// /// /// public WindowInteropHelper(Window window) { if (window == null) throw new ArgumentNullException("window"); _window = window; } #endregion Constructors //---------------------------------------------------- // // Public Properties // //--------------------------------------------------- #region Public Properties ////// Get the Handle of the window /// ////// Callers must have UIPermission(UIPermissionWindow.AllWindows) to call this API. /// ////// Critical: Exposes a handle /// PublicOK: There is a demand , this API not available in internet zone /// public IntPtr Handle { [SecurityCritical] get { SecurityHelper.DemandUIWindowPermission(); return CriticalHandle; } } ////// Critical: Exposes a handle /// internal IntPtr CriticalHandle { [SecurityCritical] get { Invariant.Assert(_window != null, "Cannot be null since we verify in the constructor"); return _window.CriticalHandle; } } ////// Get/Set the Owner handle of the window /// ////// Callers must have UIPermission(UIPermissionWindow.AllWindows) to call this API. /// ////// Critical: Exposes a handle /// PublicOK: There is a demand , this API not available in internet zone /// public IntPtr Owner { [SecurityCritical] get { SecurityHelper.DemandUIWindowPermission(); Debug.Assert(_window != null, "Cannot be null since we verify in the constructor"); return _window.OwnerHandle; } [SecurityCritical] set { SecurityHelper.DemandUIWindowPermission(); Debug.Assert(_window != null, "Cannot be null since we verify in the constructor"); // error checking done in Window _window.OwnerHandle = value; } } #endregion Public Properties //---------------------------------------------- // // Private Fields // //---------------------------------------------- #region Private Fields private Window _window; #endregion Private Members } #endregion class WindowInteropHelper } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // File: WindowInteropHelper.cs // // Description: Implements Avalon WindowInteropHelper classes, which helps // interop b/w legacy and Avalon Window. // // Created: 05/06/03 // // Copyright (C) 2001 by Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Windows; using System.Windows.Interop; using System.Security; using System.Security.Permissions; using System.Diagnostics; using MS.Internal; using MS.Internal.PresentationFramework; // SecurityHelper using MS.Win32; namespace System.Windows.Interop { #region class WindowInteropHelper ////// Implements Avalon WindowInteropHelper classes, which helps /// interop b/w legacy and Avalon Window. /// public sealed class WindowInteropHelper { //--------------------------------------------------- // // Constructors // //--------------------------------------------------- #region Constructors ////// /// /// public WindowInteropHelper(Window window) { if (window == null) throw new ArgumentNullException("window"); _window = window; } #endregion Constructors //---------------------------------------------------- // // Public Properties // //--------------------------------------------------- #region Public Properties ////// Get the Handle of the window /// ////// Callers must have UIPermission(UIPermissionWindow.AllWindows) to call this API. /// ////// Critical: Exposes a handle /// PublicOK: There is a demand , this API not available in internet zone /// public IntPtr Handle { [SecurityCritical] get { SecurityHelper.DemandUIWindowPermission(); return CriticalHandle; } } ////// Critical: Exposes a handle /// internal IntPtr CriticalHandle { [SecurityCritical] get { Invariant.Assert(_window != null, "Cannot be null since we verify in the constructor"); return _window.CriticalHandle; } } ////// Get/Set the Owner handle of the window /// ////// Callers must have UIPermission(UIPermissionWindow.AllWindows) to call this API. /// ////// Critical: Exposes a handle /// PublicOK: There is a demand , this API not available in internet zone /// public IntPtr Owner { [SecurityCritical] get { SecurityHelper.DemandUIWindowPermission(); Debug.Assert(_window != null, "Cannot be null since we verify in the constructor"); return _window.OwnerHandle; } [SecurityCritical] set { SecurityHelper.DemandUIWindowPermission(); Debug.Assert(_window != null, "Cannot be null since we verify in the constructor"); // error checking done in Window _window.OwnerHandle = value; } } #endregion Public Properties //---------------------------------------------- // // Private Fields // //---------------------------------------------- #region Private Fields private Window _window; #endregion Private Members } #endregion class WindowInteropHelper } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ProcessThreadCollection.cs
- FileChangesMonitor.cs
- MatrixConverter.cs
- MDIWindowDialog.cs
- ProfileGroupSettings.cs
- GlobalizationSection.cs
- TextElement.cs
- BitmapEffectGeneralTransform.cs
- ResourceKey.cs
- CodeTypeMemberCollection.cs
- FontFamily.cs
- DPTypeDescriptorContext.cs
- TreeView.cs
- WCFBuildProvider.cs
- DataSourceProvider.cs
- PersonalizationAdministration.cs
- CodeArrayIndexerExpression.cs
- _LazyAsyncResult.cs
- XmlCountingReader.cs
- wgx_exports.cs
- PageAdapter.cs
- VerificationException.cs
- DataGridViewCellLinkedList.cs
- ObjRef.cs
- SchemaElement.cs
- WebPartConnectionsCloseVerb.cs
- TraceUtils.cs
- ConfigXmlText.cs
- FormsAuthenticationEventArgs.cs
- SystemShuttingDownException.cs
- TextRangeAdaptor.cs
- PrincipalPermission.cs
- Icon.cs
- Error.cs
- SecurityTokenAuthenticator.cs
- _SSPIWrapper.cs
- WebReferencesBuildProvider.cs
- GenericUriParser.cs
- CodeParameterDeclarationExpressionCollection.cs
- PositiveTimeSpanValidatorAttribute.cs
- SmtpFailedRecipientException.cs
- EntitySqlQueryCacheEntry.cs
- RotateTransform.cs
- WebFormDesignerActionService.cs
- ElementsClipboardData.cs
- FormViewUpdatedEventArgs.cs
- BufferBuilder.cs
- PathFigure.cs
- TextParagraphProperties.cs
- ToolStripButton.cs
- BaseComponentEditor.cs
- ErrorTableItemStyle.cs
- SyndicationSerializer.cs
- AsymmetricKeyExchangeDeformatter.cs
- FillErrorEventArgs.cs
- ListenerAdapterBase.cs
- EventSinkHelperWriter.cs
- PTUtility.cs
- BindingMAnagerBase.cs
- Freezable.cs
- Setter.cs
- Assembly.cs
- MenuTracker.cs
- ItemsPresenter.cs
- TrackingProfileManager.cs
- ListView.cs
- HtmlElementErrorEventArgs.cs
- BamlCollectionHolder.cs
- EditingCoordinator.cs
- Span.cs
- TableItemStyle.cs
- SmtpNtlmAuthenticationModule.cs
- ColorAnimation.cs
- ContentOperations.cs
- SafeHandles.cs
- ItemCollection.cs
- WorkflowTransactionOptions.cs
- TextLineBreak.cs
- BamlResourceDeserializer.cs
- SerializationInfo.cs
- DataBoundLiteralControl.cs
- RegexGroup.cs
- WebServiceEnumData.cs
- EndEvent.cs
- XmlNamespaceDeclarationsAttribute.cs
- SkinBuilder.cs
- Transform.cs
- BuildProviderUtils.cs
- ToolTipService.cs
- TextBoxBase.cs
- AddingNewEventArgs.cs
- HttpModuleCollection.cs
- DayRenderEvent.cs
- TaskFactory.cs
- HtmlControlPersistable.cs
- SafeNativeMethods.cs
- RootProfilePropertySettingsCollection.cs
- TraceSection.cs
- ActivityWithResult.cs
- X509WindowsSecurityToken.cs