2016-05-23 2 views
1

J'ai besoin de savoir comment modifier par programme les couleurs par défaut dans AvalonEdit pour WPF en C#. Je ne souhaite pas réécrire un ensemble de règles de mise en évidence complet.Comment puis-je modifier par programme les couleurs par défaut dans AvalonEditor pour C#

J'ai trouvé l'arrière-plan et le premier plan, mais je ne suis pas sûr des règles de colorisation.

Couleurs par défaut: enter image description here

est-il un moyen d'accéder à la règle (s) par nom, et attribuer une nouvelle couleur, ou de créer un nouveau pinceau pour remplacer les couleurs par défaut pour correspondre à ce ci-dessous?

enter image description here

Répondre

0

Dans mon exemple, je vais changer la couleur par défaut de « Commentaire » dans l'ensemble « XML » règle mettant en évidence par défaut.

using ICSharpCode.AvalonEdit.Highlighting; 

    // Get a instance of the default rule set "XML" 
    var highlighting = HighlightingManager.Instance.GetDefinition("XML"); 

    // Get Color Definition "Comment" 
    var commentHighlighting = highlighting.NamedHighlightingColors.First(c => c.Name=="Comment"); 

    // Change the Foreground Color 
    commentHighlighting.Foreground = new SimpleHighlightingBrush(Color.FromRgb(0xC0, 0xC0, 0xC0)); 

    // Set the syntaxHighlighting 
    myTextEditor.SyntaxHighlighting=highlighting; 

Les noms des définitions de couleurs se trouvent dans les fichiers * .xshd des ensembles de règles mettant en valeur par défaut. Vous pouvez les trouver here.