Contrôle des paramètres de la boîte de dialogue Options
Les macros complémentaires Visual Studio sont déconseillées dans Visual Studio 2013. Vous devriez mettre vos macros complémentaires à niveau vers des extensions VSPackage. Pour plus d'informations sur les mises à jour, consultez FAQ : conversion de compléments en extensions VSPackage.
Vous pouvez écrire du code pour activer ou désactiver de nombreux paramètres sur les pages dans la boîte de dialogue Options (appelées ci-après pages Options). Utilisez uniquement les propriétés Properties, Value et la méthode Item de l'objet DTE dans le modèle Automation de Visual Studio.
Notes
Même si de nombreux éléments sur plusieurs pages Options sont accessibles par programmation, certaines pages peuvent contenir des éléments qui ne sont pas accessibles.En outre, il est possible qu'une page Options elle-même ne soit pas accessible.Si vous ne pouvez pas affecter un paramètre à l'aide du modèle Automation, vous pourrez peut-être effectuer cette opération à l'aide du Kit de développement logiciel Visual Studio.Pour plus d'informations, consultez la section « Ajout de paramètres à des pages Options existantes » plus loin dans ce document.Pour obtenir la liste des options accessibles par programmation et leurs noms exacts, consultez « Noms d'éléments de propriété » dans Détermination des noms d'éléments de propriété dans les pages Options.
Pour ouvrir la boîte de dialogue Options dans l'environnement de développement intégré (IDE), dans le menu Outils, cliquez sur Options.
Affichage des paramètres d'options
Utilisez la collection Properties et l'objet Property pour accéder aux paramètres sur une page Options. L'exemple suivant Visual Studio affiche les noms, les valeurs actuelles et les types des éléments sur la page Documents.
Sub PropertiesExample()
' Create and initialize a variable to represent the Documents
' Options page.
Dim envGenTab As EnvDTE.Properties = _
DTE.Properties("Environment", "Documents")
Dim prop As EnvDTE.Property
Dim msg As String
' Loop through each item in the Documents Options box.
For Each prop In envGenTab
Try
msg += ("PROP NAME: " & prop.Name & _
" VALUE: " & prop.Value) & _
" TYPE: " & prop.Value.GetType.ToString()) & vbCr
Catch
End Try
Next
MsgBox(msg)
End Sub
L'exemple suivant affiche les propriétés disponibles sur la page Options de la Liste des tâches (sous le nœud Environnement). Cela répertorie également les valeurs disponibles pour le commentaire Liste des jetons.
Sub DisplayProperties()
' Variables to represent the properties collection
' and each property in the Options dialog box.
Dim prop As EnvDTE.Property
Dim props As EnvDTE.Properties
Dim propVals As Object()
Dim propVal, msg As String
' Represents the Task List Node under the
' Enviroment node.
props = DTE.Properties("Environment", "TaskList")
' Represents the items in the comment Token list
' and their priorities (1-3/low-high).
prop = props.Item("CommentTokens")
propVals = prop.Value
Try
' List each property name for the Options page
' and all of its possible values.
For Each prop In props
msg += "PROP NAME: " & prop.Name & vbCr
For Each propVal In propVals
msg += " Value: " & propVal & vbCr
Next
Next
MsgBox(msg)
Catch ex As System.Exception
MsgBox("ERROR: " & ex.Message)
End Try
End Sub
Cet exemple répertorie tous les paramètres programmables pour la page Options pour Mise en forme (sous Éditeur de texte, C#).
Sub PropertiesExample()
' Create and initialize a variable to represent the C#
' Formatting text editor options page.
Dim txtEdCSFormat As EnvDTE.Properties = _
DTE.Properties("TextEditor", "CSharp - Formatting")
Dim prop As EnvDTE.Property
Dim msg As String
' Loop through each item in the C# Formatting Options page.
For Each prop In txtEdCSFormat
msg += ("PROP NAME: " & prop.Name & " VALUE: " & _
prop.Value) & vbCr
Next
MsgBox(msg)
End Sub
Modification des paramètres d'options
Vous pouvez non seulement afficher la valeur d'un paramètre sur une page Options, mais aussi modifier sa valeur. Les exemples suivants Visual Studio montrent comment procéder.
Notes
Même si vous pouvez modifier la valeur des contrôles présents sur une page Options existante, vous ne pouvez ajouter, supprimer ou modifier aucun de ses contrôles ou de ses paramètres.Pour spécifier vos propres paramètres, vous devez créer une page Options personnalisée.Pour plus d'informations, consultez Comment : créer des pages d'options personnalisées.
Le premier exemple (ToolOpt1) bascule la valeur booléenne de ReuseSavedActiveDocWindow, qui est le nom de l'option Réutiliser la fenêtre du document actif, si elle a été enregistrée sur la page Documents sous le nœud Environnement.
Sub ToolOpt1()
Dim props As EnvDTE.Properties = DTE.Properties("Environment", _
"Documents")
Dim prop As EnvDTE.Property
prop = props.Item("ReuseSavedActiveDocWindow")
' If value is TRUE, change it to FALSE, or vice-versa.
MsgBox("PROP NAME: " & prop.Name & " VALUE: " & prop.Value)
prop.Value = Not (prop.Value)
MsgBox("PROP NAME: " & prop.Name & " VALUE: " & prop.Value)
' Change it to the original value.
prop.Value = Not (prop.Value)
End Sub
L'exemple suivant modifie puis réinitialise la valeur Taille des tabulations dans la section Tabulations de la page De base sous le nœud Éditeur de texte.
Sub ToolOpt2()
Dim props As EnvDTE.Properties = DTE.Properties("TextEditor", _
"Basic")
Dim prop As EnvDTE.Property
Dim tmp As String
prop = props.Item("TabSize")
' Set a new value for Tab Size.
MsgBox("PROP NAME: " & prop.Name & " VALUE: " & prop.Value)
tmp = prop.Value
prop.Value = 10
MsgBox("PROP NAME: " & prop.Name & " VALUE: " & prop.Value)
' Change it back to the original value.
prop.Value = tmp
MsgBox("PROP NAME: " & prop.Name & " VALUE: " & prop.Value)
End Sub
Cet exemple modifie un paramètre sur la page Polices et couleurs sous le nœud Environnement.
Sub ToolOpt3()
' Changes the background color of text in the Fonts and Colors
' page of the Options dialog box on the Tools menu.
Dim props As EnvDTE.Properties
Dim prop As EnvDTE.Property
Dim fontColorItems As EnvDTE.FontsAndColorsItems
props = DTE.Properties("FontsAndColors", "TextEditor")
prop = props.Item("FontsAndColorsItems")
fontColorItems = prop.Object
Try
MsgBox("NAME: " & prop.Name & vbCr & "BACKGROUND VALUE: " & _
CStr(fontColorItems.Item("Plain Text").Background.ToString))
' Turn the text background from its current color to red.
fontColorItems.Item("Plain Text").Background = 255
MsgBox("NAME: " & prop.Name & vbCr & "BACKGROUND VALUE: " & _
Hex(fontColorItems.Item("Plain Text").Background.ToString))
Catch ex As System.Exception
MsgBox("ERROR: " & ex.Message)
End Try
End Sub
Cet exemple active la numérotation des lignes pour plusieurs langages dans le nœud Éditeur de texte.
Sub TurnOnLineNumbers()
DTE.Properties("TextEditor", "Basic").Item("ShowLineNumbers") _
.Value = True
DTE.Properties("TextEditor", "PlainText").Item("ShowLineNumbers") _
.Value = True
DTE.Properties("TextEditor", "CSharp").Item("ShowLineNumbers") _
.Value = True
DTE.Properties("TextEditor", "HTML/XML").Item("ShowLineNumbers") _
.Value = True
DTE.Properties("TextEditor", "C/C++").Item("ShowLineNumbers") _
.Value = True
DTE.Properties("TextEditor", "Visual JSharp") _
.Item("ShowLineNumbers").Value = True
End Sub
Ajout de paramètres à des pages Options existantes
Vous ne pouvez pas utiliser le modèle Automation de Visual Studio pour ajouter des paramètres à une page Options existante ou modifier les paramètres existants. Pour apporter ce genre de modifications, vous devez utiliser le Kit de développement logiciel Visual Studio. Pour plus d'informations, consultez le site Web Portail de partenaire d'écosystème d'outils de développement.
Voir aussi
Tâches
Comment : créer des pages d'options personnalisées
Comment : modifier les caractéristiques d'une fenêtre
Procédure pas à pas : création d'un Assistant
Concepts
Graphique Modèle d'objet Automation
Autres ressources
Création et contrôle de fenêtres d'environnement