private static NotificationHost CreateHostByVisual(Visual target, NotificationSettings settings = null) { var manager = new AnchorAdornerManager(target); var host = new NotificationHost(manager, settings); return(host); }
public static NotificationHost GetHostByScreen(Screen screen, NotificationSettings settings = null) { return(HostsByScreen.GetOrAdd(screen, s => { var manager = ScreenAnchorAdornerManager.Instance[s]; var host = new NotificationHost(manager, settings); return host; })); }
public static NotificationHost GetHostByVisual(Visual target, NotificationSettings settings = null) { lock (_hostByVisualLock) { var oldHost = GetNotificationHost(target); if (oldHost != null) { return(oldHost); } var newHost = CreateHostByVisual(target, settings); SetNotificationHost(target, newHost); return(newHost); } }
public NotificationHost(AnchorAdornerManager manager, NotificationSettings settings) { Manager = manager; Settings = settings; ItemsByPosition = new ConcurrentDictionary <Position, ObservableCollection <object> >(); }