Ejemplo n.º 1
0
        public static bool ExecuteOnLoad(FrameworkElement element, RoutedEventHandler handler)
        {
#endif
#if XFORMS
            handler(element, new RoutedEventArgs());
            return(true);
#else
#if SILVERLIGHT
            if ((bool)element.GetValue(IsLoadedProperty))
            {
#elif WinRT
            if (IsElementLoaded(element))
            {
#else
            if (element.IsLoaded)
            {
#endif
#if NOESIS
                handler(element, new RoutedEventArgs(element, new RoutedEvent("Loaded")));
#else
                handler(element, new RoutedEventArgs());
#endif
                return(true);
            }

            FrameworkElement.LoadedHandler loaded = null;
            loaded = (s, e) => {
                element.Loaded -= loaded;
#if SILVERLIGHT
                element.SetValue(IsLoadedProperty, true);
#endif
                handler(s, e);
            };
            element.Loaded += loaded;
            return(false);
#endif
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Executes the handler immediately if the element is loaded, otherwise wires it to the Loaded event.
        /// </summary>
        /// <param name="element">The element.</param>
        /// <param name="handler">The handler.</param>
        /// <returns>true if the handler was executed immediately; false otherwise</returns>
#if NOESIS
        public static bool ExecuteOnLoad(FrameworkElement element, FrameworkElement.LoadedHandler handler)
        {