PropertyOrder.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Presentation / System / Activities / Presentation / Base / Core / PropertyEditing / PropertyOrder.cs / 1305376 / PropertyOrder.cs

                            namespace System.Activities.Presentation.PropertyEditing { 
    using System;
    using System.ComponentModel;
    using System.Runtime;
    using System.Activities.Presentation; 
    using System.Diagnostics.CodeAnalysis;
 
    ///  
    /// This class is used to set the order in which properties show up within a category,
    /// or within a list of sub-properties.  3rd parties may choose to derive from this class 
    /// and create their own custom order tokens, which can both guarantee property order as
    /// well as property grouping.
    /// 
    [Fx.Tag.XamlVisible(false)] 
    sealed class PropertyOrder : OrderToken
    { 
        private static PropertyOrder _default; 

        ///  
        /// Creates a PropertyOrder.
        /// 
        /// Precedence of this token based on the
        /// referenced token. 
        /// Referenced token.
        /// Conflict resolution semantics. 
        /// Winning ConflictResultion semantic should only be used 
        /// on predefined, default OrderToken instances to ensure
        /// their correct placement in more complex chain of order 
        /// dependencies.
        private PropertyOrder(OrderTokenPrecedence precedence, OrderToken reference, OrderTokenConflictResolution conflictResolution)
            : base(precedence, reference, conflictResolution) {
        } 

        ///  
        /// Creates a PropertyOrder that comes after the passed in token. 
        /// 
        /// The reference token 
        /// The new PropertyOrder
        /// When reference is null
        public static PropertyOrder CreateAfter(OrderToken reference)
        { 
            if (reference == null)
                throw FxTrace.Exception.ArgumentNull("reference"); 
 
            return new PropertyOrder(OrderTokenPrecedence.After, reference, OrderTokenConflictResolution.Lose);
        } 

        /// 
        /// Treat equal orders as equal
        ///  
        /// Left token
        /// Right token 
        /// 0 
        protected override int ResolveConflict(OrderToken left, OrderToken right) {
            return 0; 
        }

        /// 
        /// Gets the system defined Default order position. 
        /// 
        public static PropertyOrder Default { 
            get { 
                if (_default == null) {
                    _default = new PropertyOrder(OrderTokenPrecedence.After, null, OrderTokenConflictResolution.Win); 
                }
                return _default;
            }
        } 
    }
} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
namespace System.Activities.Presentation.PropertyEditing { 
    using System;
    using System.ComponentModel;
    using System.Runtime;
    using System.Activities.Presentation; 
    using System.Diagnostics.CodeAnalysis;
 
    ///  
    /// This class is used to set the order in which properties show up within a category,
    /// or within a list of sub-properties.  3rd parties may choose to derive from this class 
    /// and create their own custom order tokens, which can both guarantee property order as
    /// well as property grouping.
    /// 
    [Fx.Tag.XamlVisible(false)] 
    sealed class PropertyOrder : OrderToken
    { 
        private static PropertyOrder _default; 

        ///  
        /// Creates a PropertyOrder.
        /// 
        /// Precedence of this token based on the
        /// referenced token. 
        /// Referenced token.
        /// Conflict resolution semantics. 
        /// Winning ConflictResultion semantic should only be used 
        /// on predefined, default OrderToken instances to ensure
        /// their correct placement in more complex chain of order 
        /// dependencies.
        private PropertyOrder(OrderTokenPrecedence precedence, OrderToken reference, OrderTokenConflictResolution conflictResolution)
            : base(precedence, reference, conflictResolution) {
        } 

        ///  
        /// Creates a PropertyOrder that comes after the passed in token. 
        /// 
        /// The reference token 
        /// The new PropertyOrder
        /// When reference is null
        public static PropertyOrder CreateAfter(OrderToken reference)
        { 
            if (reference == null)
                throw FxTrace.Exception.ArgumentNull("reference"); 
 
            return new PropertyOrder(OrderTokenPrecedence.After, reference, OrderTokenConflictResolution.Lose);
        } 

        /// 
        /// Treat equal orders as equal
        ///  
        /// Left token
        /// Right token 
        /// 0 
        protected override int ResolveConflict(OrderToken left, OrderToken right) {
            return 0; 
        }

        /// 
        /// Gets the system defined Default order position. 
        /// 
        public static PropertyOrder Default { 
            get { 
                if (_default == null) {
                    _default = new PropertyOrder(OrderTokenPrecedence.After, null, OrderTokenConflictResolution.Win); 
                }
                return _default;
            }
        } 
    }
} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK