Example #1
0
 private static void AttachFrameEvents(NavButtonBehavior behavior, Frame frame)
 {
     if (behavior == null || frame == null)
     {
         return;
     }
     if (behavior._eventRegistrationInfo.TryGetValue(frame, out var eventReg))
     {
         // events already attached
         return;
     }
     eventReg = new FrameEventRegistration();
     behavior._eventRegistrationInfo.Add(frame, eventReg);
     eventReg.GoBackReg    = frame.RegisterPropertyChangedCallback(Frame.CanGoBackProperty, (s, e) => behavior.CalculateThrottled());
     eventReg.GoForwardReg = frame.RegisterPropertyChangedCallback(Frame.CanGoForwardProperty, (s, e) => behavior.CalculateThrottled());
     frame.Navigated      += behavior.OnNavigated;
     frame.Loaded         += behavior.FrameOnLoaded;
 }
Example #2
0
 private static void AttachFrameEvents(NavButtonBehavior behavior, Frame frame)
 {
     if (behavior == null || frame == null)
     {
         return;
     }
     FrameEventRegistration eventReg;
     if (behavior._eventRegistrationInfo.TryGetValue(frame, out eventReg))
     {
         // events already attached
         return;
     }
     eventReg = new FrameEventRegistration();
     behavior._eventRegistrationInfo.Add(frame, eventReg);
     eventReg.GoBackReg = frame.RegisterPropertyChangedCallback(Frame.CanGoBackProperty, (s, e) => behavior.CalculateThrottled());
     eventReg.GoForwardReg = frame.RegisterPropertyChangedCallback(Frame.CanGoForwardProperty, (s, e) => behavior.CalculateThrottled());
     frame.Navigated += behavior.OnNavigated;
     frame.Loaded += behavior.FrameOnLoaded;
 }