JumpList Classe

Définition

Représente une liste d’éléments et de tâches affichée sous forme de menu sur un bouton de la barre des tâches Windows 7.

public ref class JumpList sealed : System::ComponentModel::ISupportInitialize
[System.Windows.Markup.ContentProperty("JumpItems")]
public sealed class JumpList : System.ComponentModel.ISupportInitialize
[System.Windows.Markup.ContentProperty("JumpItems")]
[System.Security.SecurityCritical]
public sealed class JumpList : System.ComponentModel.ISupportInitialize
[<System.Windows.Markup.ContentProperty("JumpItems")>]
type JumpList = class
    interface ISupportInitialize
[<System.Windows.Markup.ContentProperty("JumpItems")>]
[<System.Security.SecurityCritical>]
type JumpList = class
    interface ISupportInitialize
Public NotInheritable Class JumpList
Implements ISupportInitialize
Héritage
JumpList
Attributs
Implémente

Exemples

L’exemple suivant montre une application avec une liste de raccourcis. L’application dispose de trois boutons qui vous permettent d’ajouter une tâche à la liste de raccourcis actuelle, d’effacer le contenu de la liste de raccourcis et d’appliquer une nouvelle liste de raccourcis à l’application.

L’exemple suivant montre comment déclarer un JumpList dans le balisage. contient JumpList deux JumpTask liens et un JumpPath. L’application du JumpPath à l’interpréteur de commandes échoue si l’application n’est pas inscrite pour gérer l’extension de nom de fichier .txt.

<Application x:Class="JumpListSample.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             StartupUri="MainWindow.xaml">
    <JumpList.JumpList>
        <JumpList ShowRecentCategory="True"
                  ShowFrequentCategory="True"
                  JumpItemsRejected="JumpList_JumpItemsRejected"
                  JumpItemsRemovedByUser="JumpList_JumpItemsRemovedByUser">
            <JumpTask Title="Notepad" 
                      Description="Open Notepad." 
                      ApplicationPath="C:\Windows\notepad.exe"
                      IconResourcePath="C:\Windows\notepad.exe"/>
            <JumpTask Title="Read Me" 
                      Description="Open readme.txt in Notepad." 
                      ApplicationPath="C:\Windows\notepad.exe"
                      IconResourcePath="C:\Windows\System32\imageres.dll"
                      IconResourceIndex="14"
                      WorkingDirectory="C:\Users\Public\Documents"
                      Arguments="readme.txt"/>
            <JumpPath Path="C:\Users\Public\Documents\readme.txt" />
        </JumpList>
    </JumpList.JumpList>
</Application>

L’exemple suivant montre la page code-behind pour App.xaml. Ce code gère les JumpItemsRejected événements et JumpItemsRemovedByUser .

using System.Text;
using System.Windows;
using System.Windows.Shell;

namespace JumpListSample
{
    /// <summary>
    /// Interaction logic for App.xaml
    /// </summary>
    public partial class App : Application
    {
        private void JumpList_JumpItemsRejected(object sender, System.Windows.Shell.JumpItemsRejectedEventArgs e)
        {
            StringBuilder sb = new StringBuilder();
            sb.AppendFormat("{0} Jump Items Rejected:\n", e.RejectionReasons.Count);
            for (int i = 0; i < e.RejectionReasons.Count; ++i)
            {
                if (e.RejectedItems[i].GetType() == typeof(JumpPath))
                    sb.AppendFormat("Reason: {0}\tItem: {1}\n", e.RejectionReasons[i], ((JumpPath)e.RejectedItems[i]).Path);
                else
                    sb.AppendFormat("Reason: {0}\tItem: {1}\n", e.RejectionReasons[i], ((JumpTask)e.RejectedItems[i]).ApplicationPath);
            }

            MessageBox.Show(sb.ToString());
        }

        private void JumpList_JumpItemsRemovedByUser(object sender, System.Windows.Shell.JumpItemsRemovedEventArgs e)
        {
            StringBuilder sb = new StringBuilder();
            sb.AppendFormat("{0} Jump Items Removed by the user:\n", e.RemovedItems.Count);
            for (int i = 0; i < e.RemovedItems.Count; ++i)
            {
                sb.AppendFormat("{0}\n", e.RemovedItems[i]);
            }

            MessageBox.Show(sb.ToString());
        }
    }
}

L’exemple suivant montre le balisage utilisé pour créer l’interface utilisateur de l’application.

<Window x:Class="JumpListSample.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Jump List Sample" Height="240" Width="500">
    <Window.Resources>
        <Style TargetType="Button">
            <Setter Property="Width" Value="200" />
            <Setter Property="Margin" Value="5" />
        </Style>
    </Window.Resources>
    <Grid>
        <StackPanel>
            <Button Content="Add Task to JumpList" Click="AddTask" />
            <Button Content="Clear Jump List" Click="ClearJumpList"/>
            <Button Content="Set New Jump List" Click="SetNewJumpList" />
        </StackPanel>
    </Grid>
</Window>

L’exemple suivant montre la page code-behind pour MainWindow.xaml. Ce code montre comment modifier, effacer et créer un JumpList code de procédure dans. Pour la nouvelle liste de raccourcis, la méthode statique SetJumpList est appelée pour associer à l’application JumpList actuelle et appliquer le JumpList à l’interpréteur de commandes Windows.

using System;
using System.IO;
using System.Windows;
using System.Windows.Shell;

namespace JumpListSample
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }
        private void AddTask(object sender, RoutedEventArgs e)
        {
            // Configure a new JumpTask.
            JumpTask jumpTask1 = new JumpTask();
            // Get the path to Calculator and set the JumpTask properties.
            jumpTask1.ApplicationPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.SystemX86), "calc.exe");
            jumpTask1.IconResourcePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.SystemX86), "calc.exe");
            jumpTask1.Title = "Calculator";
            jumpTask1.Description = "Open Calculator.";
            jumpTask1.CustomCategory = "User Added Tasks";
            // Get the JumpList from the application and update it.
            JumpList jumpList1 = JumpList.GetJumpList(App.Current);
            jumpList1.JumpItems.Add(jumpTask1);
            JumpList.AddToRecentCategory(jumpTask1);
            jumpList1.Apply();
        }
        private void ClearJumpList(object sender, RoutedEventArgs e)
        {
            JumpList jumpList1 = JumpList.GetJumpList(App.Current);
            jumpList1.JumpItems.Clear();
            jumpList1.Apply();
        }
        private void SetNewJumpList(object sender, RoutedEventArgs e)
        {
            //Configure a new JumpTask
            JumpTask jumpTask1 = new JumpTask();
            // Get the path to WordPad and set the JumpTask properties.
            jumpTask1.ApplicationPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), "write.exe");
            jumpTask1.IconResourcePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), "write.exe");
            jumpTask1.Title = "WordPad";
            jumpTask1.Description = "Open WordPad.";
            jumpTask1.CustomCategory = "Jump List 2";
            // Create and set the new JumpList.
            JumpList jumpList2 = new JumpList();
            jumpList2.JumpItems.Add(jumpTask1);
            JumpList.SetJumpList(App.Current, jumpList2);
        }
    }
}

Remarques

La barre des tâches Windows 7 offre des fonctionnalités améliorées pour démarrer des programmes directement à partir du bouton de la barre des tâches à l’aide de listes de raccourcis. Les listes de raccourcis sont également utilisées dans le menu Démarrer de Windows 7. Vous accédez à une liste de raccourcis en cliquant avec le bouton droit sur un bouton de barre des tâches ou en cliquant sur la flèche en regard d’un programme dans le menu Démarrer. Pour plus d’informations sur les listes de raccourcis, consultez la section Barre des tâches des Instructions d’interaction de l’expérience utilisateur Windows.

La JumpList classe fournit un wrapper managé pour la fonctionnalité Liste de raccourcis dans la barre des tâches Windows 7 et gère les données transmises à l’interpréteur de commandes Windows. Les fonctionnalités exposées par la JumpList classe ne sont pas disponibles dans les versions de Windows antérieures à Windows 7. Les applications qui utilisent la JumpList classe s’exécuteront dans d’autres versions de Windows, mais la liste de raccourcis ne sera pas disponible. Pour plus d’informations sur l’interpréteur de commandes Windows et les API de liste de raccourcis natives, consultez Extensions de la barre des tâches.

L’illustration suivante montre la liste de raccourcis pour Lecteur multimédia Windows, avec des éléments dans les catégories Tâches et Fréquentes.

liste de raccourcis Lecteur multimédia Windows
Liste de raccourcis Windows Media Player

Configuration d’une liste de raccourcis

Les listes de raccourcis peuvent contenir deux types d’éléments, un JumpTask et un JumpPath. Un JumpTask est un lien vers un programme et un JumpPath est un lien vers un fichier. Vous pouvez séparer visuellement des éléments dans une liste de raccourcis en créant un JumpTask qui n’a pas de Title et CustomCategory spécifié. Ce vide JumpTask s’affiche sous la forme d’une ligne horizontale dans la liste de raccourcis.

Notes

Si le type du fichier spécifié dans un JumpPath n’est pas inscrit auprès de votre application, le fichier n’apparaîtra pas dans la liste de raccourcis. Par exemple, si vous ajoutez un JumpPath qui pointe vers un fichier .txt, votre application doit être inscrite pour gérer .txt fichiers. Pour plus d’informations, consultez Présentation des associations de fichiers.

Les éléments de saut sont placés en catégories dans .JumpList Par défaut, un JumpItem est affiché dans la catégorie Tâches . Vous pouvez également spécifier un CustomCategory pour .JumpItem

Vous pouvez spécifier si les catégories Standard Récent et Fréquent sont affichées dans le JumpList en définissant les ShowRecentCategory propriétés et ShowFrequentCategory . Le contenu de ces catégories est géré par l’interpréteur de commandes Windows. Étant donné que ces catégories peuvent contenir une grande partie des mêmes données, vous affichez généralement l’une ou l’autre dans votre JumpList, mais pas les deux. Windows gère automatiquement les éléments récents s’ils sont ouverts via une boîte de dialogue de fichier commune ou utilisés pour ouvrir une application via une association de type de fichier. Lorsqu’un élément est accessible via la liste de raccourcis, vous pouvez informer l’interpréteur de commandes Windows d’ajouter l’élément à la catégorie Récent en appelant la AddToRecentCategory méthode .

Application d’une liste de raccourcis à l’interpréteur de commandes Windows

Vous ne pouvez pas accéder directement à la liste de raccourcis de l’interpréteur de commandes ou lire son contenu dans la JumpList classe. Au lieu de cela, la JumpList classe fournit une représentation d’une liste de raccourcis que vous pouvez utiliser, puis appliquer à l’interpréteur de commandes Windows. Vous créez généralement un JumpList et définissez-le une fois lors de la première exécution de l’application. Toutefois, vous pouvez modifier ou remplacer au moment de l’exécution JumpList .

Une fois que vous avez défini les JumpList propriétés, vous devez appliquer à JumpList l’interpréteur de commandes Windows avant que son contenu n’apparaisse dans la liste de raccourcis de la barre des tâches. Cette opération est effectuée automatiquement lorsque le est attaché pour la JumpList première fois à une application, soit en XAML, soit dans un appel à la SetJumpList méthode. Si vous modifiez le contenu du au moment de l’exécution JumpList , vous devez appeler la Apply méthode pour appliquer son contenu actuel à l’interpréteur de commandes Windows.

Définition d’une liste de raccourcis dans XAML

Un JumpList n’est pas automatiquement attaché à un Application objet. Vous attachez un JumpList à un Application objet en XAML à l’aide de la syntaxe de propriété jointe. La JumpList classe implémente l’interface pour prendre en charge la ISupportInitialize déclaration XAML d’un JumpList. Si le JumpList est déclaré en XAML et attaché au actuel Application, il est automatiquement appliqué à l’interpréteur de commandes Windows lorsque le JumpList est initialisé.

Définition et modification d’une liste de raccourcis dans le code

Vous attachez un JumpList à un Application objet dans le code en appelant la méthode statique SetJumpList . Cela s’applique JumpList également à l’interpréteur de commandes Windows.

Pour modifier un JumpList au moment de l’exécution, vous appelez la GetJumpList méthode pour obtenir le JumpList qui est actuellement attaché à un Application. Une fois que vous avez modifié les propriétés de , JumpListvous devez appeler la Apply méthode pour appliquer les modifications à l’interpréteur de commandes Windows.

Notes

Vous en créez généralement un JumpList qui est attaché à et Application appliqué à l’interpréteur de commandes Windows. Toutefois, vous pouvez créer plusieurs JumpList objets. JumpList Un seul à la fois peut être appliqué à l’interpréteur de commandes Windows, et un JumpList seul à la fois peut être associé à un Application. Le .NET Framework n’exige pas que ceux-ci soient identiques JumpList.

Notes

Cette classe contient une demande de lien au niveau de la classe qui s’applique à tous les membres. Un SecurityException est levée lorsque l’appelant immédiat n’a pas l’autorisation d’approbation totale. Pour plus d’informations sur les exigences de sécurité, consultez Demandes de liaison et demandes d’héritage.

Constructeurs

JumpList()

Initialise une nouvelle instance de la classe JumpList.

JumpList(IEnumerable<JumpItem>, Boolean, Boolean)

Initialise une nouvelle instance de la classe JumpList avec les paramètres spécifiés.

Propriétés

JumpItems

Obtient la collection d'objets JumpItem affichés dans la Liste de raccourcis.

ShowFrequentCategory

Obtient ou définit une valeur qui indique si les éléments fréquemment utilisés sont affichés dans la Liste de raccourcis.

ShowRecentCategory

Obtient ou définit une valeur qui indique si les éléments récemment utilisés sont affichés dans la Liste de raccourcis.

Méthodes

AddToRecentCategory(JumpPath)

Ajoute le chemin d’accès spécifié à la catégorie Récent de la liste de raccourcis.

AddToRecentCategory(JumpTask)

Ajoute la tâche de saut spécifiée à la catégorie Récent de la liste de raccourcis.

AddToRecentCategory(String)

Ajoute le chemin d’accès de l’élément spécifié à la catégorie Récent de la liste de raccourcis.

Apply()

Envoie JumpList au shell Windows dans son état actuel.

BeginInit()

Signale le début de l'initialisation de JumpList.

EndInit()

Signale la fin de l'initialisation de JumpList.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetJumpList(Application)

Retourne l'objet JumpList associé à une application.

GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
SetJumpList(Application, JumpList)

Définit l'objet JumpList associé à une application.

ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

Événements

JumpItemsRejected

Se produit en cas d'échec de l'ajout d'éléments de saut à la Liste de raccourcis par le shell Windows.

JumpItemsRemovedByUser

Se produit lorsque des éléments de raccourci figurant précédemment dans la Liste de raccourcis sont supprimés de la liste par l'utilisateur.

S’applique à