/// <summary>
        /// Returning boolean whether the <see cref="EventDefinition"/> is assignable on the given <see cref="FrameworkElement"/>.
        /// </summary>
        /// <param name="element"><see cref="FrameworkElement"/> to check the assign ability for.</param>
        /// <returns></returns>
        internal bool IsAssignable(FrameworkElement element)
        {
            var t    = element.GetType();
            var desc = EventType.GetAttribute <EventDescription>();

            return(desc.DeclaringTypes.Any(type => type.IsAssignableFrom(t) || type.Equals(t)));
        }