Exemple #1
0
        private void AssociatedObjectOnMouseRightButtonUp(object sender, MouseButtonEventArgs mouseButtonEventArgs)
        {
            var element = sender as FrameworkElement;

            if (element != null)
            {
                var eventAggregator = ServiceLocator.Current.TryResolve <IEventAggregator>();
                var commandBar      = new CommandBar();
                var payload         = new ArtistRelatedCommandBarPayload(ArtistName, commandBar);
                element.ContextMenu = new CommandBarContextMenu {
                    DataContext = commandBar
                };
                eventAggregator.GetEvent <BuildArtistRelatedCommandBarEvent>().Publish(payload);
            }
        }
        private void OnBuildArtistRelatedCommandBar(ArtistRelatedCommandBarPayload payload)
        {
            payload.CommandBar.AddCommand(
                new CommandModel
            {
                Content          = "Browse",
                Command          = new DelegateCommand <string>(ExecuteBrowseForArtist),
                CommandParameter = payload.ArtistName,
                Icon             = AppIcons.Search.ToImage()
            });

            payload.CommandBar.AddCommand(
                new CommandModel
            {
                Content          = "Play",
                Command          = new DelegateCommand <string>(ExecutePlayArtist),
                CommandParameter = payload.ArtistName,
                Icon             = AppIcons.Play.ToImage()
            });

            payload.CommandBar.AddCommand(
                new CommandModel
            {
                Content          = "Queue",
                Command          = new DelegateCommand <string>(ExecuteQueueArtist),
                CommandParameter = payload.ArtistName,
                Icon             = AppIcons.Add.ToImage()
            });

            payload.CommandBar.AddCommand(
                new CommandModel
            {
                Content          = "Start radio",
                Command          = new DelegateCommand <string>(ExecuteStartArtistRadio),
                CommandParameter = payload.ArtistName
            });

            payload.CommandBar.AddCommand(
                new CommandModel
            {
                Content          = "Find similar artists",
                Command          = new DelegateCommand <string>(ExecuteBrowseForSimilarArtists),
                CommandParameter = payload.ArtistName
            });
        }
        private void OnBuildArtistRelatedCommandBar(ArtistRelatedCommandBarPayload payload)
        {
            payload.CommandBar.AddCommand(
                new CommandModel
                {
                    Content = "Browse",
                    Command = new DelegateCommand<string>(ExecuteBrowseForArtist),
                    CommandParameter = payload.ArtistName,
                    Icon = AppIcons.Search.ToImage()
                });

            payload.CommandBar.AddCommand(
                new CommandModel
                {
                    Content = "Play",
                    Command = new DelegateCommand<string>(ExecutePlayArtist),
                    CommandParameter = payload.ArtistName,
                    Icon = AppIcons.Play.ToImage()
                });

            payload.CommandBar.AddCommand(
                new CommandModel
                {
                    Content = "Queue",
                    Command = new DelegateCommand<string>(ExecuteQueueArtist),
                    CommandParameter = payload.ArtistName,
                    Icon = AppIcons.Add.ToImage()
                });

            payload.CommandBar.AddCommand(
                new CommandModel
                {
                    Content = "Start radio",
                    Command = new DelegateCommand<string>(ExecuteStartArtistRadio),
                    CommandParameter = payload.ArtistName
                });

            payload.CommandBar.AddCommand(
                new CommandModel
                {
                    Content = "Find similar artists",
                    Command = new DelegateCommand<string>(ExecuteBrowseForSimilarArtists),
                    CommandParameter = payload.ArtistName
                });
        }