Commandes de Visual Studio à une page de démarrage
Lorsque vous créez une page de démarrage personnalisée, vous pouvez ajouter des commandes de Visual Studio à celui-ci. Ce document présente les différentes manières de lier des commandes de Visual Studio aux objets XAML sur une page de démarrage.
Pour plus d'informations sur les commandes en XAML, consultez Vue d'ensemble des commandes
Commandes d'ajout du ainsi de commande
Le modèle de projet de page de démarrage définit des alias pour Microsoft.VisualStudio.PlatformUI et les espaces de noms d' Microsoft.VisualStudio.Shell , comme suit.
Vous pouvez utiliser vs: alias pour lier des commandes de Visual Studio aux contrôles XAML sur la page en définissant la propriété d' Command du contrôle à vs:VSCommands.ExecuteCommand. Vous pouvez ensuite définir la propriété d' CommandParameter au nom de la commande à exécuter, comme indiqué dans l'exemple suivant.
<Button Name="btnNewProj" Content="New Project"
Command="{x:Static vs:VSCommands.ExecuteCommand}"
CommandParameter="File.NewProject" >
</Button>
Notes
x: alias, qui fait référence au schéma XAML, est requis au début de toutes les commandes.
Vous pouvez définir la valeur de la propriété d' Command à toute commande qui peut être accessible à partir de la fenêtre de Commande . Pour une liste des commandes disponibles, consultez Alias de commandes Visual Studio.
Si la commande afin d'ajouter requiert un paramètre supplémentaire, vous pouvez l'ajouter à la valeur de la propriété d' CommandParameter . Paramètres distincts des commandes à l'aide de les espaces, comme indiqué dans l'exemple suivant.
<Button Content="Web Search"
Command="{x:Static vs:VSCommands.ExecuteCommand}"
CommandParameter="View.WebBrowser www.bing.com" />
Extensions appel de façon satisfaisante de commande
Vous pouvez appeler des commandes de VSPackages inscrit à l'aide de la même syntaxe que celle utilisée pour appeler les autres commandes Visual Studio. Par exemple, si un VSPackage installé ajoute une commande de page d'accueil au menu d' Afficher , vous pouvez appeler cette commande en affectant CommandParameter à View.HomePage.
Notes
Si vous appelez une commande associée à un VSPackage, le package doit être chargé lorsque la commande est appelée.
Pour appeler une commande associée à un complément Visual Studio, vous devez utiliser le nom de la commande complet du complément. Pour plus d'informations, consultez Comment : exécuter des compléments sur la ligne de commande.
Commandes d'ajout des assemblys
Pour appeler une commande d'un assembly, ou au code d'un VSPackage qui n'est pas associé à une commande de menu, vous devez créer un alias pour l'assembly et appeler l'alias.
pour appeler une commande d'un assembly
dans votre solution, ajoutez une référence à l'assembly.
En haut du fichier de StartPage.xaml, ajoutez une directive de l'espace de noms de l'assembly, comme indiqué dans l'exemple suivant.
xmlns:vsc="clr-namespace:WebUserControl;assembly=WebUserControl"
Appelez la commande en affectant à la propriété d' Command d'un objet XAML, comme indiqué dans l'exemple suivant.
XAML
<vs:Button Text="Hide me" Command="{x:Static vsc:HideControl}" .../>
Notes
Si vous n'utilisez pas le modèle de projet de page de démarrage, vous devez copier votre assembly et le coller dans.\dossier d'installation de Visual Studio\Common7\IDE\PrivateAssemblies \ pour garantir l'est chargé avant qu'il ne soit appelée.
commandes d'ajout du modèle Automation
Vous pouvez accéder au modèle Automation Visual Studio d'une page de démarrage, dans la balise et le code.
Dans le balisage, vous pouvez accéder au modèle Automation à l'aide de la syntaxe d' Extension de balisage de liaison pour appeler l'objet d' DTE . Grâce à cette approche, vous pouvez créer une liaison aux propriétés simples tels que ceux que les collections de retour, mais vous ne pouvez pas lier aux méthodes ou des services. L'exemple suivant illustre un contrôle d' TextBlock qui crée une liaison avec la propriété d' Name , et un contrôle pour ListBox qui énumère les propriétés d' Caption de la collection retournée par la propriété d' Windows .
<TextBlock Text="{Binding Path=DTE.Name}" FontSize="12" HorizontalAlignment="Center"/>
<ListBox ItemsSource="{Binding Path=DTE.Windows}">
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Path=Caption}"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Dans le code, vous pouvez accéder aux méthodes, des services, de les propriétés et plus complexes du modèle Automation, par exemple, dans un contrôle utilisateur ou dans le fichier code-behind de votre page XAML. Procédez ainsi la même façon que dans tout autre projet qui utilise le modèle Automation. Pour obtenir un exemple, consultez Procédure pas - à - pas : Paramètres utilisateur d'enregistrement sur une page de démarrage à l'aide de automation.
Pour plus d'informations sur le modèle Automation, consultez Extension de l'environnement Visual Studio ou le Référencement des assemblys d'automation et de l'objet DTE2.k
Chemins d'accès relatifs
Lorsque vous référencez des chemins d'accès au fichier d'une page de démarrage, utilisez toujours un chemin d'accès relatif pour tenir compte des configurations d'autre système. Toutefois, la racine de tous les chemins d'accès relatifs dans une page de démarrage la résout pas - à \StartPages \ mais à. \dossier d'installation de Visual Studio\Common7\IDE \, qui est l'emplacement où devenv.exe se trouve. Pour définir un chemin d'accès relatif à l'emplacement des fichiers de page de démarrage, utilisez le VSStartPageRelativeConverter. Faites ceci en définissant la propriété d' Source de l'objet à vs:StartPageRelative, comme indiqué dans l'exemple suivant.
<Image Source="{sp:StartPageRelative Image1.png}" Margin="20" />
Utilisez la syntaxe standard de chemin d'accès relatif lorsque vous accédez aux ressources qui sont inclus dans Visual Studio, ou des fichiers qui sont inclus dans d'autres packages.
Voir aussi
Tâches
Procédure pas - à - pas : Ajout d'une référence de DLL à la page de démarrage
Concepts
Architecture de la page de démarrage
Meilleures pratiques de page de démarrage