Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / 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
- TriggerActionCollection.cs
- DurableEnlistmentState.cs
- DynamicMethod.cs
- CommandValueSerializer.cs
- CDSCollectionETWBCLProvider.cs
- FixedSOMPageElement.cs
- HostedImpersonationContext.cs
- DataGridViewIntLinkedList.cs
- Operators.cs
- MetadataArtifactLoaderFile.cs
- ExpressionBuilderCollection.cs
- _NestedMultipleAsyncResult.cs
- CodeTypeMember.cs
- datacache.cs
- WrappedIUnknown.cs
- NameNode.cs
- ComponentRenameEvent.cs
- InvokeBase.cs
- AttributeUsageAttribute.cs
- DecoderBestFitFallback.cs
- ComponentEditorForm.cs
- DbDataReader.cs
- Style.cs
- ClientScriptManager.cs
- RoutedEvent.cs
- VScrollProperties.cs
- StrokeCollectionConverter.cs
- ProfilePropertyMetadata.cs
- RecordConverter.cs
- TextSerializer.cs
- SystemNetworkInterface.cs
- ClassData.cs
- BaseCodeDomTreeGenerator.cs
- XPathNavigatorKeyComparer.cs
- MaskedTextBox.cs
- HtmlMeta.cs
- ProxyAttribute.cs
- EmptyWithCancelationCheckWorkItem.cs
- TemplatedMailWebEventProvider.cs
- ButtonFieldBase.cs
- AnnotationDocumentPaginator.cs
- ConsoleCancelEventArgs.cs
- CreateUserErrorEventArgs.cs
- AnnotationResourceChangedEventArgs.cs
- SystemIPGlobalStatistics.cs
- ResourceProperty.cs
- WebHostScriptMappingsInstallComponent.cs
- webproxy.cs
- ObjectStateManagerMetadata.cs
- SafeFileMappingHandle.cs
- PathSegment.cs
- InkCanvas.cs
- HttpBrowserCapabilitiesBase.cs
- SoapSchemaImporter.cs
- RelationshipEnd.cs
- SaveFileDialog.cs
- EndpointInstanceProvider.cs
- GeometryConverter.cs
- UrlPath.cs
- ConstructorNeedsTagAttribute.cs
- ServiceThrottle.cs
- TimeManager.cs
- EndpointConfigContainer.cs
- ResourceIDHelper.cs
- ZoneButton.cs
- AvtEvent.cs
- EntityRecordInfo.cs
- AmbientLight.cs
- RtfNavigator.cs
- SendKeys.cs
- ImpersonateTokenRef.cs
- EventSetterHandlerConverter.cs
- MultiPageTextView.cs
- DeviceSpecific.cs
- EntityParameter.cs
- WebBrowser.cs
- CodeChecksumPragma.cs
- XmlAutoDetectWriter.cs
- SiteMapNodeCollection.cs
- Bitmap.cs
- PocoPropertyAccessorStrategy.cs
- ChannelToken.cs
- Solver.cs
- ServicePerformanceCounters.cs
- Selection.cs
- XmlLinkedNode.cs
- FormatVersion.cs
- TextCompositionManager.cs
- StateDesigner.cs
- WebPartManager.cs
- RoleGroup.cs
- BuildProviderInstallComponent.cs
- GrammarBuilder.cs
- ConfigurationStrings.cs
- PerformanceCounterManager.cs
- ThreadPool.cs
- StylusSystemGestureEventArgs.cs
- BooleanStorage.cs
- PageThemeCodeDomTreeGenerator.cs
- XhtmlBasicLinkAdapter.cs