Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Controls / Primitives / ResizeGrip.cs / 1305600 / ResizeGrip.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: Implements the ResizeGrip control // // History // 10/24/03 hamidm Created // //--------------------------------------------------------------------------- using System; using System.Diagnostics; using System.Windows; using System.Windows.Threading; using System.Windows.Media; using System.Windows.Shapes; #if OLD_AUTOMATION using System.Windows.Automation.Provider; #endif namespace System.Windows.Controls.Primitives { ////// The ResizeGrip control enables the Window object to have a resize grip. This control should be /// made part of the Window's style visual tree. /// ////// /// #if OLD_AUTOMATION [Automation(AccessibilityControlType = "Thumb")] #endif public class ResizeGrip : Control { //---------------------------------------------- // // Constructors // //---------------------------------------------- #region Constructors static ResizeGrip() { DefaultStyleKeyProperty.OverrideMetadata(typeof(ResizeGrip), new FrameworkPropertyMetadata(typeof(ResizeGrip))); _dType = DependencyObjectType.FromSystemTypeInternal(typeof(ResizeGrip)); Window.IWindowServiceProperty.OverrideMetadata( typeof(ResizeGrip), new FrameworkPropertyMetadata(new PropertyChangedCallback(_OnWindowServiceChanged))); } ////// Default ResizeGrip constructor /// ////// Automatic determination of current Dispatcher. Use alternative constructor /// that accepts a Dispatcher for best performance. /// public ResizeGrip() : base() { } #endregion Constructors //---------------------------------------------- // // Private Methods // //---------------------------------------------- #region Private Methods private static void _OnWindowServiceChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { ResizeGrip rg = d as ResizeGrip; Debug.Assert(rg != null, "DependencyObject must be of type ResizeGrip."); rg.OnWindowServiceChanged(e.OldValue as Window, e.NewValue as Window); } ////// When IWindowService is invalidated, it means that this control is either placed into /// a window's visual tree or taken out. If we are in a new Window's visual tree, we /// want to set the reference to this object inside the Window. Window uses this /// reference in its WM_NCHITTEST code /// private void OnWindowServiceChanged(Window oldWindow, Window newWindow) { if ((oldWindow != null) && (oldWindow != newWindow)) { oldWindow.ClearResizeGripControl(this); } if (newWindow != null) { newWindow.SetResizeGripControl(this); } } #region DTypeThemeStyleKey // Returns the DependencyObjectType for the registered ThemeStyleKey's default // value. Controls will override this method to return approriate types. internal override DependencyObjectType DTypeThemeStyleKey { get { return _dType; } } private static DependencyObjectType _dType; #endregion DTypeThemeStyleKey // // This property // 1. Finds the correct initial size for the _effectiveValues store on the current DependencyObject // 2. This is a performance optimization // internal override int EffectiveValuesInitialSize { get { return 28; } } #endregion Private Methods } } // 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
- AttachedAnnotationChangedEventArgs.cs
- XPathParser.cs
- Header.cs
- PerformanceCounterPermission.cs
- ILGenerator.cs
- ArithmeticException.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- ParameterModifier.cs
- InternalTypeHelper.cs
- SafeLocalAllocation.cs
- DataGridTable.cs
- Configuration.cs
- OdbcEnvironment.cs
- MsmqProcessProtocolHandler.cs
- XmlSortKeyAccumulator.cs
- DBSchemaRow.cs
- NamedPipeAppDomainProtocolHandler.cs
- CultureTableRecord.cs
- _FixedSizeReader.cs
- DeploymentSection.cs
- Base64WriteStateInfo.cs
- CatalogZone.cs
- TemplateComponentConnector.cs
- NodeCounter.cs
- TextureBrush.cs
- LinqDataSourceStatusEventArgs.cs
- Logging.cs
- PrintControllerWithStatusDialog.cs
- EntityContainerEntitySetDefiningQuery.cs
- SqlCommandBuilder.cs
- Header.cs
- SplashScreen.cs
- CodeTypeDeclaration.cs
- HttpHandlerAction.cs
- VerificationAttribute.cs
- TextEditorThreadLocalStore.cs
- ListInitExpression.cs
- TextEditorSpelling.cs
- StylusSystemGestureEventArgs.cs
- CompositeCollectionView.cs
- AspNetHostingPermission.cs
- RestHandler.cs
- WindowVisualStateTracker.cs
- NavigationCommands.cs
- Compiler.cs
- HGlobalSafeHandle.cs
- DataGridViewRowCollection.cs
- AngleUtil.cs
- MailDefinition.cs
- ListSortDescription.cs
- StringDictionary.cs
- UniqueIdentifierService.cs
- RootNamespaceAttribute.cs
- LockedAssemblyCache.cs
- Soap12ServerProtocol.cs
- ProtocolsConfigurationHandler.cs
- RealProxy.cs
- _OSSOCK.cs
- RuleConditionDialog.Designer.cs
- Condition.cs
- UniqueID.cs
- ToolBarTray.cs
- DynamicMethod.cs
- RecognizedAudio.cs
- StrokeNodeOperations.cs
- IisTraceWebEventProvider.cs
- XmlProcessingInstruction.cs
- DefaultValueAttribute.cs
- XmlExtensionFunction.cs
- PaperSource.cs
- SeparatorAutomationPeer.cs
- TwoPhaseCommitProxy.cs
- EllipseGeometry.cs
- VolatileResourceManager.cs
- SendMailErrorEventArgs.cs
- TableLayoutStyleCollection.cs
- DNS.cs
- AliasGenerator.cs
- Renderer.cs
- DescendantQuery.cs
- AdornerLayer.cs
- VectorCollectionValueSerializer.cs
- DataSourceControl.cs
- DetailsViewInsertedEventArgs.cs
- PanelStyle.cs
- Funcletizer.cs
- XmlObjectSerializerReadContextComplexJson.cs
- UserControl.cs
- FixUpCollection.cs
- StorageComplexTypeMapping.cs
- PersonalizationEntry.cs
- TextDataBindingHandler.cs
- _SSPISessionCache.cs
- cache.cs
- CompiledIdentityConstraint.cs
- CreateRefExpr.cs
- SpotLight.cs
- ApplicationHost.cs
- CheckBox.cs
- HeaderCollection.cs