/// <summary>
        /// Indicates that series is using an axis.
        /// </summary>
        /// <param name="value">The series using the axis.</param>
        internal void Register(object value)
        {
            Debug.Assert(value != null, "object cannot be null.");
            Debug.Assert(!RegisteredObjects.Contains(value), "object has already been registered with the axis.");

            RegisteredObjects.Add(value);
            IsUsed = true;

            OnObjectRegistered(value);
        }
        /// <summary>
        /// Indicates that a series is no longer using an axis.
        /// </summary>
        /// <param name="value">The series no longer using the axis.</param>
        internal void Unregister(object value)
        {
            Debug.Assert(value != null, "object cannot be null.");
            Debug.Assert(RegisteredObjects.Contains(value), "object is not registered with the axis.");

            RegisteredObjects.Remove(value);
            if (RegisteredObjects.Count == 0)
            {
                IsUsed = false;
            }

            OnObjectUnregistered(value);
        }