Пример #1
0
        /// <summary>
        /// Perform mouse down processing.
        /// </summary>
        /// <param name="e">A MouseEventArgs that contains the event data.</param>
        /// <param name="rawPt">The actual point provided from the windows message.</param>
        public virtual void MouseDown(MouseEventArgs e, Point rawPt)
        {
            Debug.Assert(e != null);

            // Validate incoming reference
            if (e == null)
            {
                throw new ArgumentNullException("e");
            }

            Point pt = new Point(e.X, e.Y);

            // Set the correct active view from the point
            UpdateViewFromPoint(_control, pt);

            // Tell current view of mouse down
            if (ActiveView != null)
            {
                MouseCaptured = ActiveView.MouseDown(rawPt, e.Button);
            }

            // Generate event to indicate the view manager has processed a mouse down
            PerformMouseDownProcessed(e);
        }