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
- FormatterServices.cs
- SpecialNameAttribute.cs
- GPRECT.cs
- CryptoApi.cs
- ChannelListenerBase.cs
- XmlException.cs
- XamlToRtfParser.cs
- DesignerActionUIService.cs
- SchemaSetCompiler.cs
- DetailsViewUpdatedEventArgs.cs
- MessageQueuePermissionEntry.cs
- DashStyles.cs
- XmlByteStreamReader.cs
- sqlmetadatafactory.cs
- ObjectDataSourceView.cs
- EntityDataSourceQueryBuilder.cs
- ProxyDataContractResolver.cs
- IgnoreSection.cs
- CodeNamespaceCollection.cs
- TextBox.cs
- _DisconnectOverlappedAsyncResult.cs
- AssemblySettingAttributes.cs
- ChtmlTextBoxAdapter.cs
- MimeXmlReflector.cs
- Material.cs
- DataGrid.cs
- DbProviderFactories.cs
- CustomErrorsSection.cs
- LogicalExpr.cs
- MultitargetingHelpers.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- ILGenerator.cs
- DescendantOverDescendantQuery.cs
- ParameterCollection.cs
- StyleHelper.cs
- DataTransferEventArgs.cs
- MetadataItem.cs
- SelectionListDesigner.cs
- ToolTipAutomationPeer.cs
- List.cs
- ValidationPropertyAttribute.cs
- CapacityStreamGeometryContext.cs
- TypeToken.cs
- DrawingGroup.cs
- SQLByteStorage.cs
- ThemeableAttribute.cs
- XhtmlBasicTextBoxAdapter.cs
- PtsContext.cs
- KeyValuePairs.cs
- NavigatorOutput.cs
- XmlLanguage.cs
- DropAnimation.xaml.cs
- PassportAuthenticationEventArgs.cs
- SQLMembershipProvider.cs
- DefaultSerializationProviderAttribute.cs
- CodeTypeParameter.cs
- GlyphElement.cs
- TargetConverter.cs
- CompilerWrapper.cs
- SQLGuidStorage.cs
- TextModifier.cs
- TransactionScopeDesigner.cs
- TrustManagerMoreInformation.cs
- ClientProxyGenerator.cs
- DynamicDocumentPaginator.cs
- XPathSelectionIterator.cs
- ChildrenQuery.cs
- GridViewColumnHeaderAutomationPeer.cs
- xdrvalidator.cs
- BadImageFormatException.cs
- XmlWhitespace.cs
- StylusPointPropertyInfoDefaults.cs
- DesignerVerbCollection.cs
- OpenCollectionAsyncResult.cs
- RelatedCurrencyManager.cs
- Predicate.cs
- MonthCalendar.cs
- ScrollPatternIdentifiers.cs
- sqlnorm.cs
- QilCloneVisitor.cs
- MenuTracker.cs
- DataTransferEventArgs.cs
- CommonRemoteMemoryBlock.cs
- GuidConverter.cs
- TransformerTypeCollection.cs
- TemplateBaseAction.cs
- Size.cs
- EntityDataSourceDesigner.cs
- DesignParameter.cs
- ClipboardData.cs
- AliasedExpr.cs
- Char.cs
- RestHandler.cs
- SecurityTokenRequirement.cs
- OperationSelectorBehavior.cs
- SqlNodeAnnotations.cs
- LongPath.cs
- ToolBar.cs
- ExceptionValidationRule.cs
- PasswordBox.cs