CustomPopupPlacement.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Controls / Primitives / CustomPopupPlacement.cs / 1305600 / CustomPopupPlacement.cs

                            using System; 

namespace System.Windows.Controls.Primitives
{
    ///  
    ///     Describes where a popup should be placed on screen.
    ///  
    public struct CustomPopupPlacement 
    {
        ///  
        ///     Constructor
        /// 
        /// Assigns to Point
        /// Assigns to PrimaryAxis 
        public CustomPopupPlacement(Point point, PopupPrimaryAxis primaryAxis)
        { 
            _point = point; 
            _primaryAxis = primaryAxis;
        } 

        /// 
        ///     The point, relative to the PlacementTarget, where the upper left corner of the Popup should be.
        ///  
        public Point Point
        { 
            get 
            {
                return _point; 
            }

            set
            { 
                _point = value;
            } 
        } 

        ///  
        ///     The primary axis of the popup that will be used for nudging on-screen.
        /// 
        public PopupPrimaryAxis PrimaryAxis
        { 
            get
            { 
                return _primaryAxis; 
            }
 
            set
            {
                _primaryAxis = value;
            } 
        }
 
        ///  
        ///     Compares the value of two CustomPopupPlacement structs for equality.
        ///  
        /// The first value.
        /// The second value.
        /// 
        public static bool operator==(CustomPopupPlacement placement1, CustomPopupPlacement placement2) 
        {
            return placement1.Equals(placement2); 
        } 

        ///  
        ///     Compares the value of two CustomPopupPlacement structs for inequality.
        /// 
        /// The first value.
        /// The second value. 
        /// 
        public static bool operator !=(CustomPopupPlacement placement1, CustomPopupPlacement placement2) 
        { 
            return !placement1.Equals(placement2);
        } 

        /// 
        ///     Compares the value of this struct with another object.
        ///  
        /// An object to compare to.
        /// True if equivalent. False otherwise. 
        public override bool Equals(object o) 
        {
            if (o is CustomPopupPlacement) 
            {
                CustomPopupPlacement placement = (CustomPopupPlacement)o;
                return (placement._primaryAxis == _primaryAxis) && (placement._point == _point);
            } 

            return false; 
        } 

        ///  
        ///     Hash function for this type.
        /// 
        /// A hash code for this struct.
        public override int GetHashCode() 
        {
            return _primaryAxis.GetHashCode() ^ _point.GetHashCode(); 
        } 

        private Point _point; 
        private PopupPrimaryAxis _primaryAxis;
    }
}

// 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