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
- ReflectionTypeLoadException.cs
- RegexFCD.cs
- SimpleTypeResolver.cs
- RSAPKCS1SignatureDeformatter.cs
- MetabaseSettingsIis7.cs
- TypeResolver.cs
- ListViewCommandEventArgs.cs
- PrintDialog.cs
- HwndHostAutomationPeer.cs
- Focus.cs
- LogicalMethodInfo.cs
- AttachedPropertyBrowsableWhenAttributePresentAttribute.cs
- InvocationExpression.cs
- SemanticBasicElement.cs
- XmlQuerySequence.cs
- UrlMappingsModule.cs
- GenericPrincipal.cs
- ProgressPage.cs
- Material.cs
- DesigntimeLicenseContext.cs
- MetadataExchangeClient.cs
- AutoSizeToolBoxItem.cs
- IssuedTokenClientElement.cs
- IArgumentProvider.cs
- ListViewGroupConverter.cs
- QueryCacheManager.cs
- TriggerBase.cs
- ItemChangedEventArgs.cs
- SecurityContext.cs
- WriteTimeStream.cs
- FrameDimension.cs
- XmlHierarchicalDataSourceView.cs
- SerializationObjectManager.cs
- PointUtil.cs
- FillErrorEventArgs.cs
- QilGeneratorEnv.cs
- MetabaseServerConfig.cs
- PersonalizationStateQuery.cs
- Codec.cs
- ExtensionFile.cs
- MimePart.cs
- RNGCryptoServiceProvider.cs
- FormViewUpdatedEventArgs.cs
- SizeIndependentAnimationStorage.cs
- ToolBarButtonClickEvent.cs
- DocumentPaginator.cs
- SocketManager.cs
- GlobalProxySelection.cs
- DataProtectionSecurityStateEncoder.cs
- XmlSchemaObjectTable.cs
- DataGridViewRowCancelEventArgs.cs
- SqlFlattener.cs
- XamlNamespaceHelper.cs
- GACIdentityPermission.cs
- LockCookie.cs
- FullTrustAssemblyCollection.cs
- CodeConditionStatement.cs
- AssemblyEvidenceFactory.cs
- XPathNavigatorKeyComparer.cs
- XmlNodeChangedEventManager.cs
- TextTreeRootTextBlock.cs
- SpecialFolderEnumConverter.cs
- _CookieModule.cs
- XPathMessageFilter.cs
- MonthChangedEventArgs.cs
- SettingsAttributeDictionary.cs
- SmiContext.cs
- ActivationServices.cs
- RequestCache.cs
- OdbcConnectionStringbuilder.cs
- ButtonBaseAdapter.cs
- PropertyEmitterBase.cs
- TextEditorTyping.cs
- EntityDesignPluralizationHandler.cs
- CompilerState.cs
- MachineKeySection.cs
- FileDialog.cs
- WindowAutomationPeer.cs
- DoubleConverter.cs
- FontEditor.cs
- EmptyEnumerator.cs
- BuilderInfo.cs
- SoapCommonClasses.cs
- Simplifier.cs
- Encoding.cs
- CompareInfo.cs
- RootBuilder.cs
- ProgressBar.cs
- SparseMemoryStream.cs
- XPathNode.cs
- MatrixTransform.cs
- WindowInteractionStateTracker.cs
- RawTextInputReport.cs
- WebPartAddingEventArgs.cs
- WhiteSpaceTrimStringConverter.cs
- ScriptBehaviorDescriptor.cs
- FontStretchConverter.cs
- SerialStream.cs
- NodeFunctions.cs
- ObjectContext.cs