Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Documents / Floater.cs / 1305600 / Floater.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // Description: Floater element. // //--------------------------------------------------------------------------- using System.ComponentModel; using MS.Internal; using MS.Internal.PtsHost.UnsafeNativeMethods; // PTS restrictions namespace System.Windows.Documents { ////// Floater element /// public class Floater : AnchoredBlock { //------------------------------------------------------------------- // // Constructors // //------------------------------------------------------------------- #region Constructors ////// Static ctor. Initializes property metadata. /// static Floater() { DefaultStyleKeyProperty.OverrideMetadata(typeof(Floater), new FrameworkPropertyMetadata(typeof(Floater))); } ////// Initialized the new instance of a Floater /// public Floater() : this(null, null) { } ////// Initialized the new instance of a Floater specifying a Block added /// to a Floater as its first child. /// /// /// Block added as a first initial child of the Floater. /// public Floater(Block childBlock) : this(childBlock, null) { } ////// Creates a new Floater instance. /// /// /// Optional child of the new Floater, may be null. /// /// /// Optional position at which to insert the new Floater. May /// be null. /// public Floater(Block childBlock, TextPointer insertionPosition) : base(childBlock, insertionPosition) { } #endregion Constructors //-------------------------------------------------------------------- // // Public Properties // //------------------------------------------------------------------- #region Public Properties ////// DependencyProperty for public static readonly DependencyProperty HorizontalAlignmentProperty = FrameworkElement.HorizontalAlignmentProperty.AddOwner( typeof(Floater), new FrameworkPropertyMetadata( HorizontalAlignment.Stretch, FrameworkPropertyMetadataOptions.AffectsMeasure)); ///property. /// /// /// public HorizontalAlignment HorizontalAlignment { get { return (HorizontalAlignment)GetValue(HorizontalAlignmentProperty); } set { SetValue(HorizontalAlignmentProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty WidthProperty = DependencyProperty.Register( "Width", typeof(double), typeof(Floater), new FrameworkPropertyMetadata( Double.NaN, FrameworkPropertyMetadataOptions.AffectsMeasure), new ValidateValueCallback(IsValidWidth)); ///property. /// /// The Width property specifies the width of the element. /// [TypeConverter(typeof(LengthConverter))] public double Width { get { return (double)GetValue(WidthProperty); } set { SetValue(WidthProperty, value); } } #endregion Public Properties //-------------------------------------------------------------------- // // Private Methods // //-------------------------------------------------------------------- #region Private Methods private static bool IsValidWidth(object o) { double width = (double)o; double maxWidth = Math.Min(1000000, PTS.MaxPageSize); if (Double.IsNaN(width)) { // Default value of width is NaN return true; } if (width < 0 || width > maxWidth) { return false; } return true; } #endregion Private Methods } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // Description: Floater element. // //--------------------------------------------------------------------------- using System.ComponentModel; using MS.Internal; using MS.Internal.PtsHost.UnsafeNativeMethods; // PTS restrictions namespace System.Windows.Documents { ////// Floater element /// public class Floater : AnchoredBlock { //------------------------------------------------------------------- // // Constructors // //------------------------------------------------------------------- #region Constructors ////// Static ctor. Initializes property metadata. /// static Floater() { DefaultStyleKeyProperty.OverrideMetadata(typeof(Floater), new FrameworkPropertyMetadata(typeof(Floater))); } ////// Initialized the new instance of a Floater /// public Floater() : this(null, null) { } ////// Initialized the new instance of a Floater specifying a Block added /// to a Floater as its first child. /// /// /// Block added as a first initial child of the Floater. /// public Floater(Block childBlock) : this(childBlock, null) { } ////// Creates a new Floater instance. /// /// /// Optional child of the new Floater, may be null. /// /// /// Optional position at which to insert the new Floater. May /// be null. /// public Floater(Block childBlock, TextPointer insertionPosition) : base(childBlock, insertionPosition) { } #endregion Constructors //-------------------------------------------------------------------- // // Public Properties // //------------------------------------------------------------------- #region Public Properties ////// DependencyProperty for public static readonly DependencyProperty HorizontalAlignmentProperty = FrameworkElement.HorizontalAlignmentProperty.AddOwner( typeof(Floater), new FrameworkPropertyMetadata( HorizontalAlignment.Stretch, FrameworkPropertyMetadataOptions.AffectsMeasure)); ///property. /// /// /// public HorizontalAlignment HorizontalAlignment { get { return (HorizontalAlignment)GetValue(HorizontalAlignmentProperty); } set { SetValue(HorizontalAlignmentProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty WidthProperty = DependencyProperty.Register( "Width", typeof(double), typeof(Floater), new FrameworkPropertyMetadata( Double.NaN, FrameworkPropertyMetadataOptions.AffectsMeasure), new ValidateValueCallback(IsValidWidth)); ///property. /// /// The Width property specifies the width of the element. /// [TypeConverter(typeof(LengthConverter))] public double Width { get { return (double)GetValue(WidthProperty); } set { SetValue(WidthProperty, value); } } #endregion Public Properties //-------------------------------------------------------------------- // // Private Methods // //-------------------------------------------------------------------- #region Private Methods private static bool IsValidWidth(object o) { double width = (double)o; double maxWidth = Math.Min(1000000, PTS.MaxPageSize); if (Double.IsNaN(width)) { // Default value of width is NaN return true; } if (width < 0 || width > maxWidth) { return false; } return true; } #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
- ItemCheckEvent.cs
- CollectionChangedEventManager.cs
- TableLayoutPanelCellPosition.cs
- BrowserCapabilitiesCompiler.cs
- Stylus.cs
- TextEditorMouse.cs
- CompiledRegexRunner.cs
- UrlRoutingHandler.cs
- HtmlEncodedRawTextWriter.cs
- LicenseManager.cs
- ManipulationLogic.cs
- MatrixUtil.cs
- BuildDependencySet.cs
- DataSvcMapFileSerializer.cs
- OpCopier.cs
- HtmlTernaryTree.cs
- FrameworkPropertyMetadata.cs
- WebPartConnectionsCancelVerb.cs
- DataRowExtensions.cs
- EventMap.cs
- NamedPipeConnectionPool.cs
- CompensationDesigner.cs
- SimpleWorkerRequest.cs
- UnsafeNativeMethodsCLR.cs
- SerializableAttribute.cs
- LogStream.cs
- HttpResponseBase.cs
- TimerEventSubscription.cs
- LazyTextWriterCreator.cs
- WindowsRichEdit.cs
- TextBlock.cs
- ConfigPathUtility.cs
- ProcessInfo.cs
- WebAdminConfigurationHelper.cs
- XmlWhitespace.cs
- FusionWrap.cs
- ConfigDefinitionUpdates.cs
- ScrollableControl.cs
- SQLInt32Storage.cs
- NoResizeSelectionBorderGlyph.cs
- _ScatterGatherBuffers.cs
- XmlSchemaAppInfo.cs
- DrawingVisual.cs
- DocumentDesigner.cs
- AuthenticationService.cs
- WebPartTransformer.cs
- PipelineModuleStepContainer.cs
- ValidatingReaderNodeData.cs
- RelationshipEnd.cs
- UnsafeNativeMethods.cs
- IBuiltInEvidence.cs
- PermissionSetEnumerator.cs
- QilReference.cs
- SafeCryptoHandles.cs
- ListView.cs
- FlowNode.cs
- TransportChannelFactory.cs
- WebZoneDesigner.cs
- SequenceNumber.cs
- RecordsAffectedEventArgs.cs
- BlurEffect.cs
- MetadataArtifactLoaderXmlReaderWrapper.cs
- Helpers.cs
- CfgRule.cs
- TrackingMemoryStreamFactory.cs
- FilterQuery.cs
- FontStyle.cs
- JsonReaderDelegator.cs
- StorageModelBuildProvider.cs
- IncrementalReadDecoders.cs
- Point3DIndependentAnimationStorage.cs
- PointF.cs
- SafeArchiveContext.cs
- XmlCDATASection.cs
- XsdDuration.cs
- CompilerParameters.cs
- CodeTypeReference.cs
- DrawingServices.cs
- ConcurrentQueue.cs
- QilParameter.cs
- TrustSection.cs
- InputChannel.cs
- ScriptReferenceEventArgs.cs
- ChangesetResponse.cs
- DataSourceProvider.cs
- TickBar.cs
- TreeNodeBindingCollection.cs
- HttpPostServerProtocol.cs
- RightsController.cs
- WebPartCancelEventArgs.cs
- SystemInfo.cs
- TreeView.cs
- TextPatternIdentifiers.cs
- XmlSchemaComplexType.cs
- ComplexBindingPropertiesAttribute.cs
- StoreAnnotationsMap.cs
- Or.cs
- BindingSource.cs
- AuthorizationRuleCollection.cs
- CheckStoreFileValidityRequest.cs