Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / System / Windows / Controls / Primitives / ResizeGrip.cs / 1 / ResizeGrip.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: Implements the ResizeGrip control // // History // 10/24/03 [....] 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
- DictionaryGlobals.cs
- BoundPropertyEntry.cs
- TypePropertyEditor.cs
- TextLine.cs
- EncryptedKey.cs
- InvalidCastException.cs
- TextParagraphProperties.cs
- NetCodeGroup.cs
- KoreanCalendar.cs
- RepeatBehaviorConverter.cs
- TabItemAutomationPeer.cs
- basenumberconverter.cs
- XsltConvert.cs
- XmlName.cs
- NumericPagerField.cs
- Main.cs
- SemaphoreFullException.cs
- SwitchLevelAttribute.cs
- KeyInstance.cs
- SqlTransaction.cs
- RemoteArgument.cs
- WebPartDeleteVerb.cs
- GiveFeedbackEvent.cs
- RawStylusSystemGestureInputReport.cs
- ManipulationPivot.cs
- mediapermission.cs
- AuthenticodeSignatureInformation.cs
- WindowClosedEventArgs.cs
- BamlResourceDeserializer.cs
- HotSpotCollection.cs
- StringValueSerializer.cs
- PermissionSet.cs
- AnnotationComponentChooser.cs
- Exceptions.cs
- PlatformCulture.cs
- BufferedGraphics.cs
- DelimitedListTraceListener.cs
- DynamicArgumentDialog.cs
- ReadOnlyHierarchicalDataSource.cs
- InvalidContentTypeException.cs
- SqlException.cs
- ModuleConfigurationInfo.cs
- AssociationSetMetadata.cs
- XPathNode.cs
- DataSysAttribute.cs
- ConsoleTraceListener.cs
- UnauthorizedWebPart.cs
- PolicyValidator.cs
- InstallerTypeAttribute.cs
- XmlNamespaceDeclarationsAttribute.cs
- NamedPipeTransportSecurityElement.cs
- XamlTypeMapper.cs
- TemplatedAdorner.cs
- LineGeometry.cs
- DecimalKeyFrameCollection.cs
- QilFunction.cs
- relpropertyhelper.cs
- activationcontext.cs
- RelatedPropertyManager.cs
- OdbcCommand.cs
- DefinitionProperties.cs
- HostingMessageProperty.cs
- FormatterConverter.cs
- ObjectConverter.cs
- AuthenticatingEventArgs.cs
- ProfessionalColors.cs
- OdbcConnection.cs
- DataGridViewRowsAddedEventArgs.cs
- OpenFileDialog.cs
- CodeCommentStatement.cs
- XmlResolver.cs
- CodeAccessSecurityEngine.cs
- BooleanKeyFrameCollection.cs
- CompositeFontParser.cs
- GridPatternIdentifiers.cs
- Condition.cs
- DataSourceComponent.cs
- httpstaticobjectscollection.cs
- DelegatingTypeDescriptionProvider.cs
- SwitchAttribute.cs
- sqlpipe.cs
- FactoryId.cs
- RadioButtonStandardAdapter.cs
- PropagatorResult.cs
- ApplicationDirectoryMembershipCondition.cs
- CheckBoxRenderer.cs
- ClusterSafeNativeMethods.cs
- SchemaSetCompiler.cs
- EmbeddedMailObjectCollectionEditor.cs
- InsufficientMemoryException.cs
- ContextMenuService.cs
- SQLByteStorage.cs
- SQLInt64.cs
- TextHidden.cs
- WebPartEditorCancelVerb.cs
- StreamGeometryContext.cs
- Debugger.cs
- BooleanProjectedSlot.cs
- DataReceivedEventArgs.cs
- PrintPreviewDialog.cs