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
- SelectionPattern.cs
- SkinBuilder.cs
- Int16AnimationBase.cs
- ParameterToken.cs
- OdbcReferenceCollection.cs
- TransformerTypeCollection.cs
- AssemblyFilter.cs
- tooltip.cs
- ChoiceConverter.cs
- StrongNameKeyPair.cs
- CodeAttributeDeclaration.cs
- CqlIdentifiers.cs
- DataSourceUtil.cs
- ScrollChangedEventArgs.cs
- DockProviderWrapper.cs
- DirectoryRootQuery.cs
- complextypematerializer.cs
- DetailsViewDeleteEventArgs.cs
- KeyGestureConverter.cs
- ConfigurationValidatorBase.cs
- HitTestWithPointDrawingContextWalker.cs
- ImageButton.cs
- AuthenticateEventArgs.cs
- ProxyHelper.cs
- ValueTable.cs
- InvokeWebServiceDesigner.cs
- ResourceProviderFactory.cs
- HtmlTextViewAdapter.cs
- RowCache.cs
- LayoutInformation.cs
- XmlILOptimizerVisitor.cs
- XMLSyntaxException.cs
- TypeUnloadedException.cs
- Splitter.cs
- DataGridViewComboBoxCell.cs
- Literal.cs
- Polyline.cs
- BamlLocalizabilityResolver.cs
- XmlDataSourceNodeDescriptor.cs
- RegexInterpreter.cs
- HttpCacheVaryByContentEncodings.cs
- HttpRequestMessageProperty.cs
- HtmlControlPersistable.cs
- XPathAncestorQuery.cs
- MarshalDirectiveException.cs
- CodeMethodReturnStatement.cs
- HttpVersion.cs
- TextSyndicationContent.cs
- TemplateControl.cs
- X509Certificate2Collection.cs
- ScrollBarAutomationPeer.cs
- OrderedHashRepartitionEnumerator.cs
- WebPartAddingEventArgs.cs
- DefaultEventAttribute.cs
- RegistrySecurity.cs
- LoginView.cs
- MeasurementDCInfo.cs
- DBDataPermissionAttribute.cs
- BuiltInExpr.cs
- TextSimpleMarkerProperties.cs
- BitHelper.cs
- TextRangeEditLists.cs
- UIElementIsland.cs
- Calendar.cs
- PropertyInformation.cs
- KnownIds.cs
- ReferenceConverter.cs
- RangeValueProviderWrapper.cs
- HttpProfileGroupBase.cs
- LineVisual.cs
- DefaultParameterValueAttribute.cs
- ScriptControl.cs
- WebColorConverter.cs
- TextEditorSpelling.cs
- ToolBarButtonClickEvent.cs
- ModifierKeysConverter.cs
- OdbcEnvironmentHandle.cs
- DnsElement.cs
- NavigationPropertyAccessor.cs
- AutomationProperty.cs
- SQLInt32Storage.cs
- DocumentScope.cs
- Stroke.cs
- _ContextAwareResult.cs
- ZoomPercentageConverter.cs
- InputProcessorProfilesLoader.cs
- StateMachineWorkflowInstance.cs
- LingerOption.cs
- DBConcurrencyException.cs
- WinEventWrap.cs
- HitTestWithPointDrawingContextWalker.cs
- NativeWindow.cs
- SkinBuilder.cs
- RootBuilder.cs
- Bezier.cs
- DbParameterCollection.cs
- SizeValueSerializer.cs
- FrugalList.cs
- MethodImplAttribute.cs
- WindowsAltTab.cs