private void HandleLoaded(object sender, RoutedEventArgs e) { if (bridge == null) { WPFSpinnakerConfiguration.Init(); // Using log4net with Spinnaker is optional. log4net.Config.XmlConfigurator.Configure(); SpinnakerLog4netAdapter.Init(); bridge = SpinnakerConfiguration.CurrentConfig.CreateBrowserBridge(webBrowser); SplashViewModel splashViewModel = new SampleApplication.Core.SampleApplication().Init(); bridge.ShowView("SplashView.html", splashViewModel); splashViewModel.PropertyChanged += (propSender,propChangeEvent) => { if (propChangeEvent.PropertyName == "CurrentPage") bridge.ExecuteScriptFunction("setHeroBackground"); }; System.Windows.Threading.DispatcherTimer dispatcherTimer = new System.Windows.Threading.DispatcherTimer(); dispatcherTimer.Tick += new EventHandler((o, tickArgs) => { splashViewModel.RealtimeViewModel.HandleGUITimerTick(); }); dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 0, 50); dispatcherTimer.Start(); } }
public override void ViewDidLoad() { base.ViewDidLoad(); MonoTouchSpinnakerConfiguration.Init(); SpinnakerConfiguration.CurrentConfig.LogLevel = Spinnaker.Core.SpinnakerLogLevel.Debug; BrowserBridge bridge = SpinnakerConfiguration.CurrentConfig.CreateBrowserBridge(webView); SplashViewModel splashViewModel = new SampleApplication.Core.SampleApplication().Init(); bridge.ShowView("SplashView.html", splashViewModel); splashViewModel.PropertyChanged += (object sender, System.ComponentModel.PropertyChangedEventArgs e) => { if (e.PropertyName == "CurrentPage") bridge.ExecuteScriptFunction("setHeroBackground"); }; NSTimer.CreateRepeatingScheduledTimer(1.0 / 20.0, delegate { splashViewModel.RealtimeViewModel.HandleGUITimerTick(); }); }