本文整理汇总了C#中IEventAggregator.Get方法的典型用法代码示例。如果您正苦于以下问题:C# IEventAggregator.Get方法的具体用法?C# IEventAggregator.Get怎么用?C# IEventAggregator.Get使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IEventAggregator
的用法示例。
在下文中一共展示了IEventAggregator.Get方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: PluginRuntime
public PluginRuntime(IPluginPersister pluginPersister, EventAggregator eventAggregator, ITpBus bus)
{
_pluginPersister = pluginPersister;
_eventAggregator = eventAggregator;
_bus = bus;
_eventAggregator.Get<Event<AccountCollectionCreated>>().Subscribe(OnAccountCollectionCreated);
_eventAggregator.Get<Event<ProfileChanged>>().Subscribe(OnProfileChanged);
}
示例2: AccountCollection
public AccountCollection(IAccountRepository accountRepository, IEventAggregator eventAggregator)
{
_accountRepository = accountRepository;
_gate = new object();
eventAggregator.Get<Event<ProfileChanged>>().Subscribe(e => OnAccountChanged(e.AccountName));
eventAggregator.Get<Event<ProfileCollectionChanged>>().Subscribe(e => OnAccountChanged(e.AccountName));
eventAggregator.Get<Event<AccountCollectionCreated>>().Raise(new AccountCollectionCreated(this));
}
示例3: PlaybackManager
public PlaybackManager(ITheaterConfigurationManager configurationManager, ILogger logger, IApiClient apiClient, INavigator nav, IPresenter presentationManager, IEventAggregator events)
{
_configurationManager = configurationManager;
_logger = logger;
_apiClient = apiClient;
_nav = nav;
_presentationManager = presentationManager;
_playbackStart = events.Get<PlaybackStartEventArgs>();
_playbackStop = events.Get<PlaybackStopEventArgs>();
}
示例4: RootViewModel
public RootViewModel(IEventAggregator events, INavigator navigator, ITheaterApplicationHost appHost, IServerConnectionManager serverManager, RootContext rootContext)
{
_navigator = navigator;
_serverManager = serverManager;
_rootContext = rootContext;
Notifications = new NotificationTrayViewModel(events);
Commands = new CommandBarViewModel(appHost, navigator);
Clock = new ClockViewModel();
IsInFocus = true;
events.Get<ShowPageEvent>().Subscribe(message => ActivePage = message.ViewModel);
events.Get<PlaybackStopEventArgs>().Subscribe(message => IsInternalMediaPlaying = false);
events.Get<PlaybackStartEventArgs>().Subscribe(message => {
if (message.Player is IInternalMediaPlayer && message.Player is IVideoPlayer && message.Options.Items[0].IsVideo) {
IsInternalMediaPlaying = true;
}
});
}
示例5: OsdViewModel
public OsdViewModel(IPlaybackManager playbackManager, IApiClient apiClient, IImageManager imageManager, IPresenter presentationManager, ILogger logger, INavigator nav, IServerEvents serverEvents, IEventAggregator events)
{
Logger = logger;
PresentationManager = presentationManager;
ImageManager = imageManager;
ApiClient = apiClient;
PlaybackManager = playbackManager;
NavigationService = nav;
_serverEvents = serverEvents;
PauseCommand = new RelayCommand(Pause);
StopCommand = new RelayCommand(Stop);
SkipBackwardCommand = new RelayCommand(SkipBackward);
SkipForwardCommand = new RelayCommand(SkipForward);
NextChapterCommand = new RelayCommand(NextChapter);
PreviousChapterCommand = new RelayCommand(PreviousChapter);
PlayCommand = new RelayCommand(Play);
PlayPauseCommand = new RelayCommand(PlayPause);
_playbackStopHandler = args => NavigationService.Back();
_playbackStartHandler = args => {
MediaPlayer = args.Player;
NowPlayingItem = args.Player.CurrentMedia;
};
events.Get<PlaybackStopEventArgs>().Subscribe(_playbackStopHandler, true);
events.Get<PlaybackStartEventArgs>().Subscribe(_playbackStartHandler, true);
MediaPlayer = playbackManager.MediaPlayers.FirstOrDefault(i => i.PlayState != PlayState.Idle);
PresentationOptions = new RootPresentationOptions {
IsFullScreenPage = true,
ShowClock = false,
ShowCommandBar = false,
ShowMediaBrowserLogo = false
};
}
示例6: NotificationTrayViewModel
public NotificationTrayViewModel(IEventAggregator events)
{
Notifications = new ObservableCollection<IViewModel>();
events.Get<ShowNotificationEvent>().Subscribe(e => {
IViewModel vm = e.ViewModel;
EventHandler closed = null;
closed = (sender, args) => {
Notifications.Remove(vm);
vm.Closed -= closed;
};
vm.Closed += closed;
Notifications.Add(vm);
}, false);
}
示例7: Presenter
public Presenter(IEventAggregator events, WindowManager windowManager)
{
_showPageEvent = events.Get<ShowPageEvent>();
_showNotificationEvent = events.Get<ShowNotificationEvent>();
_pageLoadedEvent = events.Get<PageLoadedEvent>();
_windowManager = windowManager;
}