public WindowBaseView(WindowBaseViewModel model) { _model = model; _model.Surface = this; DataContext = _model; InitializeComponent(); }
public static void ShowWindow(WindowBaseViewModel windowBaseViewModel) { if (!FindWindowIdentity(windowBaseViewModel)) { var windowBaseView = new WindowBaseView(windowBaseViewModel); PrepareWindow(windowBaseViewModel); windowBaseView.Show(); } }
public static void ShowWindow(WindowBaseViewModel model) { if (!FindWindowIdentity(model)) { WindowBaseView win = new WindowBaseView(model); PrepareWindow(model); win.Show(); } }
public WindowBaseView(WindowBaseViewModel model) { ContentRendered += new EventHandler(WindowBaseView_ContentRendered); if (model != null) { _model = model; _model.SetSurface(this); DataContext = _model; } InitializeComponent(); Loaded += (s, e) => MoveFocus(new TraversalRequest(FocusNavigationDirection.Next)); }
public static bool ShowModalWindow(WindowBaseViewModel windowBaseViewModel) { try { WindowBaseView win = new WindowBaseView(windowBaseViewModel); PrepareWindow(windowBaseViewModel); bool? result = win.ShowDialog(); return result.HasValue ? result.Value : false; } catch (Exception e) { Logger.Error(e, "DialogService.ShowModalWindow"); } return false; }
static bool FindWindowIdentity(WindowBaseViewModel windowBaseViewModel) { var identityModel = windowBaseViewModel as IWindowIdentity; if (identityModel != null) { WindowBaseViewModel openedWindow = (WindowBaseViewModel)_openedWindows.FirstOrDefault(x => x.Guid == identityModel.Guid); if (openedWindow != null && openedWindow.Surface != null) { openedWindow.Surface.Activate(); return true; } windowBaseViewModel.Closed += (s, e) => _openedWindows.Remove((IWindowIdentity)s); _openedWindows.Add(identityModel); } return false; }
public static bool ShowModalWindow(WindowBaseViewModel model, bool allowsTransparency = true) { try { WindowBaseView win = new WindowBaseView(model); win.AllowsTransparency = allowsTransparency; PrepareWindow(model); bool? result = win.ShowDialog(); return result.HasValue ? result.Value : false; } catch (Exception e) { Logger.Error(e, "Исключение при вызове DialogService.ShowModalWindow"); throw; } }
public void ShowWindow(WindowBaseViewModel windowBaseViewModel) { if (OnShow != null) OnShow(windowBaseViewModel); }
public bool ShowModalWindow(WindowBaseViewModel windowBaseViewModel) { if (OnShowModal != null) OnShowModal(windowBaseViewModel); return windowBaseViewModel.CloseResult == null ? false : windowBaseViewModel.CloseResult.Value; }
static void SetWindowProperty(WindowBaseViewModel windowBaseViewModel) { windowBaseViewModel.Surface.Owner = GetActiveWindow(); windowBaseViewModel.Surface.ShowInTaskbar = windowBaseViewModel.Surface.Owner == null; windowBaseViewModel.Surface.WindowStartupLocation = windowBaseViewModel.Surface.Owner == null ? WindowStartupLocation.CenterScreen : WindowStartupLocation.CenterOwner; }
static void PrepareWindow(WindowBaseViewModel model) { SetWindowProperty(model); }
public void ShowWindow(WindowBaseViewModel windowBaseViewModel) { DialogService.ShowWindow(windowBaseViewModel); }
public bool ShowModalWindow(WindowBaseViewModel windowBaseViewModel) { return DialogService.ShowModalWindow(windowBaseViewModel); }
private static void PrepareWindow(WindowBaseViewModel model) { SetWindowProperty(model); UpdateWindowSize(model); }
private static void UpdateWindowSize(WindowBaseViewModel model) { string key = model.GetType().AssemblyQualifiedName; var isSaveSize = model.GetType().GetCustomAttributes(typeof(SaveSizeAttribute), true).Length > 0; if (isSaveSize && Properties.Settings.Default.WindowSizeState.ContainsKey(key)) { Rect rect = Rect.Parse(Properties.Settings.Default.WindowSizeState[key]); model.Surface.Top = rect.X; model.Surface.Left = rect.Y; model.Surface.Width = rect.Width; model.Surface.Height = rect.Height; model.Closed += SaveWindowSize; } }