Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Framework / System / Windows / Documents / Floater.cs / 1 / 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
- ImageAttributes.cs
- ExpandableObjectConverter.cs
- IsolatedStorageException.cs
- RemotingAttributes.cs
- SmtpAuthenticationManager.cs
- ReadOnlyNameValueCollection.cs
- SqlDataRecord.cs
- MenuItem.cs
- TaskDesigner.cs
- DrawingVisual.cs
- GPRECTF.cs
- DnsEndPoint.cs
- TabControlEvent.cs
- ImmComposition.cs
- ExpandableObjectConverter.cs
- SrgsDocumentParser.cs
- AssociationType.cs
- NamespaceQuery.cs
- StylusTip.cs
- ParallelTimeline.cs
- IdleTimeoutMonitor.cs
- MarkupExtensionReturnTypeAttribute.cs
- PreservationFileReader.cs
- SafeRightsManagementPubHandle.cs
- HttpProfileBase.cs
- GenericsNotImplementedException.cs
- Menu.cs
- SqlDataSourceEnumerator.cs
- SplineKeyFrames.cs
- MarshalByRefObject.cs
- GeneralTransform2DTo3D.cs
- TextParagraph.cs
- GridViewCommandEventArgs.cs
- StrongNameKeyPair.cs
- DataSvcMapFileSerializer.cs
- TypeLoadException.cs
- LinearKeyFrames.cs
- ValueUtilsSmi.cs
- ZipIOFileItemStream.cs
- DiscoveryEndpointElement.cs
- DataKey.cs
- EntityStoreSchemaGenerator.cs
- XmlArrayItemAttribute.cs
- MetricEntry.cs
- ChtmlTextWriter.cs
- AlignmentYValidation.cs
- StoreAnnotationsMap.cs
- ISFClipboardData.cs
- Int32CAMarshaler.cs
- MulticastDelegate.cs
- TextPattern.cs
- LocalizationCodeDomSerializer.cs
- ReflectionHelper.cs
- unsafenativemethodstextservices.cs
- StaticFileHandler.cs
- ChineseLunisolarCalendar.cs
- NameValueSectionHandler.cs
- InfoCardAsymmetricCrypto.cs
- QilXmlReader.cs
- EncryptedPackage.cs
- GridErrorDlg.cs
- Help.cs
- BitmapSourceSafeMILHandle.cs
- QuaternionAnimation.cs
- EntityKey.cs
- SizeF.cs
- Trustee.cs
- CellParagraph.cs
- SymbolTable.cs
- ProxyWebPartManager.cs
- FlowLayoutSettings.cs
- KeyPressEvent.cs
- ProcessHostServerConfig.cs
- XmlEnumAttribute.cs
- VisualTreeHelper.cs
- TextEditorParagraphs.cs
- HttpDebugHandler.cs
- Point3DCollection.cs
- DoubleAnimation.cs
- PassportPrincipal.cs
- XmlKeywords.cs
- UITypeEditor.cs
- MouseGestureConverter.cs
- DispatcherObject.cs
- ValuePatternIdentifiers.cs
- Color.cs
- CellCreator.cs
- XmlChildEnumerator.cs
- XmlReflectionImporter.cs
- DataSet.cs
- AccessDataSource.cs
- WebConfigurationHostFileChange.cs
- Menu.cs
- SyndicationDeserializer.cs
- KeyTime.cs
- SoapEnumAttribute.cs
- Triplet.cs
- Knowncolors.cs
- SmtpLoginAuthenticationModule.cs
- RegexParser.cs