简体   繁体   中英

What would be the equivalent or closest match of Activated event of Window in Page in WPF?

There is Activated event in a Window in WPF. What is the the closest match for Activated event for a page. I want to use an event that triggers every time a page is displayed.

How about using the IsVisibleChanged event.

In your window, either your base class definition that you use throughout your app, or just the one you are interested in. Add a call at the opening of it something like

public class MyBaseclassWindow : Window
{
   public MyBaseclassWindow()
   {
      IsVisibleChanged += MyBaseclassWindow_IsVisibleChanged;
   }

   private void MyBaseclassWindow_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e)
   {
      // e.NewValue will be TRUE when the visibility is coming back on
      if ( !e.NewValue )
         return;

      // do whatever you want every time window becomes visible.
   }
}

If this is something you want done throughout your system, then you can just use THIS window as your base window by always using it as forms are created.

There is the Loaded event which occurs when the element ( Page ) is laid out, rendered, and ready for interaction.

The Frame class, which I guess is used to host your pages, also has a ContentRendered event that you can handle.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM