public void ShowUserControlAndCheckWindowProperties() { ISplashScreenService service = new DXSplashScreenService() { ViewTemplate = new DataTemplate() { VisualTree = new FrameworkElementFactory(typeof(SplashScreenTestUserControl)) }, }; service.ShowSplashScreen(); SplashScreenTestUserControl.DoEvents(); Window wnd = SplashScreenTestUserControl.Window; AutoResetEvent SyncEvent = new AutoResetEvent(false); bool hasError = true; wnd.Dispatcher.BeginInvoke(new Action(() => { hasError = false; hasError = hasError | !(WindowStartupLocation.CenterScreen == wnd.WindowStartupLocation); hasError = hasError | !(true == WindowFadeAnimationBehavior.GetEnableAnimation(wnd)); hasError = hasError | !(null == wnd.Style); hasError = hasError | !(WindowStyle.None == wnd.WindowStyle); hasError = hasError | !(ResizeMode.NoResize == wnd.ResizeMode); hasError = hasError | !(true == wnd.AllowsTransparency); hasError = hasError | !(Colors.Transparent == ((SolidColorBrush)wnd.Background).Color); hasError = hasError | !(false == wnd.ShowInTaskbar); hasError = hasError | !(true == wnd.Topmost); hasError = hasError | !(SizeToContent.WidthAndHeight == wnd.SizeToContent); SyncEvent.Set(); })); SyncEvent.WaitOne(TimeSpan.FromSeconds(2)); Assert.IsFalse(hasError); service.HideSplashScreen(); }
void ShowUserControlCore(ISplashScreenService service) { service.ShowSplashScreen(); SplashScreenTestUserControl.DoEvents(); Assert.AreEqual(0, SplashScreenTestUserControl.ViewModel.Progress); Assert.AreEqual(100, SplashScreenTestUserControl.ViewModel.MaxProgress); Assert.AreEqual("Loading...", SplashScreenTestUserControl.ViewModel.State); Assert.AreEqual(true, SplashScreenTestUserControl.ViewModel.IsIndeterminate); service.SetSplashScreenProgress(50, 100); SplashScreenTestUserControl.DoEvents(); Assert.AreEqual(50, SplashScreenTestUserControl.ViewModel.Progress); Assert.AreEqual(100, SplashScreenTestUserControl.ViewModel.MaxProgress); Assert.AreEqual("Loading...", SplashScreenTestUserControl.ViewModel.State); Assert.AreEqual(false, SplashScreenTestUserControl.ViewModel.IsIndeterminate); service.SetSplashScreenProgress(100, 200); SplashScreenTestUserControl.DoEvents(); Assert.AreEqual(100, SplashScreenTestUserControl.ViewModel.Progress); Assert.AreEqual(200, SplashScreenTestUserControl.ViewModel.MaxProgress); Assert.AreEqual("Loading...", SplashScreenTestUserControl.ViewModel.State); Assert.AreEqual(false, SplashScreenTestUserControl.ViewModel.IsIndeterminate); service.SetSplashScreenState("Test"); SplashScreenTestUserControl.DoEvents(); Assert.AreEqual(100, SplashScreenTestUserControl.ViewModel.Progress); Assert.AreEqual(200, SplashScreenTestUserControl.ViewModel.MaxProgress); Assert.AreEqual("Test", SplashScreenTestUserControl.ViewModel.State); Assert.AreEqual(false, SplashScreenTestUserControl.ViewModel.IsIndeterminate); service.HideSplashScreen(); }
public void ShowUserControl_Test() { DXSplashScreen.Show <SplashScreenTestUserControl>(); SplashScreenTestUserControl.DoEvents(); Assert.AreEqual(0, SplashScreenTestUserControl.ViewModel.Progress); Assert.AreEqual(100, SplashScreenTestUserControl.ViewModel.MaxProgress); Assert.AreEqual("Loading...", SplashScreenTestUserControl.ViewModel.State); Assert.AreEqual(true, SplashScreenTestUserControl.ViewModel.IsIndeterminate); DXSplashScreen.Progress(50); SplashScreenTestUserControl.DoEvents(); Assert.AreEqual(50, SplashScreenTestUserControl.ViewModel.Progress); Assert.AreEqual(100, SplashScreenTestUserControl.ViewModel.MaxProgress); Assert.AreEqual("Loading...", SplashScreenTestUserControl.ViewModel.State); Assert.AreEqual(false, SplashScreenTestUserControl.ViewModel.IsIndeterminate); DXSplashScreen.Progress(100, 200); SplashScreenTestUserControl.DoEvents(); Assert.AreEqual(100, SplashScreenTestUserControl.ViewModel.Progress); Assert.AreEqual(200, SplashScreenTestUserControl.ViewModel.MaxProgress); Assert.AreEqual("Loading...", SplashScreenTestUserControl.ViewModel.State); Assert.AreEqual(false, SplashScreenTestUserControl.ViewModel.IsIndeterminate); DXSplashScreen.SetState("Test"); SplashScreenTestUserControl.DoEvents(); Assert.AreEqual(100, SplashScreenTestUserControl.ViewModel.Progress); Assert.AreEqual(200, SplashScreenTestUserControl.ViewModel.MaxProgress); Assert.AreEqual("Test", SplashScreenTestUserControl.ViewModel.State); Assert.AreEqual(false, SplashScreenTestUserControl.ViewModel.IsIndeterminate); }
public void BindServiceProperties() { var service = new DXSplashScreenService() { ViewTemplate = new DataTemplate() { VisualTree = new FrameworkElementFactory(typeof(SplashScreenTestUserControl)) }, }; ISplashScreenService iService = service; Border container = new Border(); ContainerVM vm = ViewModelSource.Create(() => new ContainerVM()); container.DataContext = vm; vm.State = "Loading2"; BindingOperations.SetBinding(service, DXSplashScreenService.ProgressProperty, new Binding("Progress")); BindingOperations.SetBinding(service, DXSplashScreenService.MaxProgressProperty, new Binding("MaxProgress")); BindingOperations.SetBinding(service, DXSplashScreenService.StateProperty, new Binding("State")); Interaction.GetBehaviors(container).Add(service); service.ShowSplashScreen(); SplashScreenTestUserControl.DoEvents(); Assert.AreEqual(0, SplashScreenTestUserControl.ViewModel.Progress); Assert.AreEqual(0, SplashScreenTestUserControl.ViewModel.MaxProgress); Assert.AreEqual("Loading2", SplashScreenTestUserControl.ViewModel.State); Assert.AreEqual(false, SplashScreenTestUserControl.ViewModel.IsIndeterminate); vm.Progress = 50; vm.MaxProgress = 100; SplashScreenTestUserControl.DoEvents(); Assert.AreEqual(50, SplashScreenTestUserControl.ViewModel.Progress); Assert.AreEqual(100, SplashScreenTestUserControl.ViewModel.MaxProgress); Assert.AreEqual("Loading2", SplashScreenTestUserControl.ViewModel.State); Assert.AreEqual(false, SplashScreenTestUserControl.ViewModel.IsIndeterminate); vm.Progress = 100; vm.MaxProgress = 200; SplashScreenTestUserControl.DoEvents(); Assert.AreEqual(100, SplashScreenTestUserControl.ViewModel.Progress); Assert.AreEqual(200, SplashScreenTestUserControl.ViewModel.MaxProgress); Assert.AreEqual("Loading2", SplashScreenTestUserControl.ViewModel.State); Assert.AreEqual(false, SplashScreenTestUserControl.ViewModel.IsIndeterminate); vm.State = "Test"; SplashScreenTestUserControl.DoEvents(); Assert.AreEqual(100, SplashScreenTestUserControl.ViewModel.Progress); Assert.AreEqual(200, SplashScreenTestUserControl.ViewModel.MaxProgress); Assert.AreEqual("Test", SplashScreenTestUserControl.ViewModel.State); Assert.AreEqual(false, SplashScreenTestUserControl.ViewModel.IsIndeterminate); iService.HideSplashScreen(); }
public void ShowUserControlAndCheckWindowProperties2() { Style wndStyle = new Style(); ISplashScreenService service = new DXSplashScreenService() { ViewTemplate = new DataTemplate() { VisualTree = new FrameworkElementFactory(typeof(SplashScreenTestUserControl)) }, SplashScreenWindowStyle = wndStyle, SplashScreenStartupLocation = WindowStartupLocation.Manual, }; service.ShowSplashScreen(); SplashScreenTestUserControl.DoEvents(); Window wnd = SplashScreenTestUserControl.Window; AutoResetEvent SyncEvent = new AutoResetEvent(false); bool hasError = true; wnd.Dispatcher.BeginInvoke(new Action(() => { hasError = false; hasError = hasError | !(WindowStartupLocation.Manual == wnd.WindowStartupLocation); hasError = hasError | !(false == WindowFadeAnimationBehavior.GetEnableAnimation(wnd)); hasError = hasError | !(wndStyle == wnd.Style); hasError = hasError | !(WindowStyle.SingleBorderWindow == wnd.WindowStyle); hasError = hasError | !(ResizeMode.CanResize == wnd.ResizeMode); hasError = hasError | !(false == wnd.AllowsTransparency); hasError = hasError | !(true == wnd.ShowInTaskbar); hasError = hasError | !(false == wnd.Topmost); hasError = hasError | !(SizeToContent.Manual == wnd.SizeToContent); SyncEvent.Set(); })); SyncEvent.WaitOne(TimeSpan.FromSeconds(2)); Assert.IsFalse(hasError); service.HideSplashScreen(); }
public SplashScreenTestUserControl() { Instance = this; }
public SplashScreenTestUserControl() { Instance = this; if(TemplateCreator != null) Template = TemplateCreator.Invoke(); }