Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Lo strumento Visual Studio Extension Color Compiler è un'applicazione console che accetta un file .xml che rappresenta i colori per i temi di Visual Studio esistenti e lo copre in un file con estensione pkgdef in modo che tali colori possano essere usati in Visual Studio. Poiché è facile confrontare le differenze tra i file .xml, questo strumento è utile per gestire i colori personalizzati nel controllo del codice sorgente. Può anche essere collegato in ambienti di compilazione in modo che l'output della compilazione sia un file con estensione pkgdef valido.
SCHEMA XML tema
Un file di .xml tema completo è simile al seguente:
<Themes>
<!—one or Theme elements -->
<Theme>
<!-- one or more Category elements -->
<Category>
<!-- one or more Color elements -->
<Color>
<!-- zero or one Background element -->
<Background />
<!-- zero or one Foreground element -->
<Foreground />
</Color>
</Category>
</Theme>
</Themes>
Tema
L'elemento <Theme> definisce un intero tema. Un tema deve contenere almeno un <elemento Category> . Gli elementi del tema sono definiti come segue:
<Theme Name="name" GUID="guid">
<!-- one or more Category elements -->
</Theme>
| Attributo | Definizione |
|---|---|
| Nome | [Obbligatorio] Nome del tema |
| Identificatore Unico Globale (GUID) | [Obbligatorio] GUID del tema (deve corrispondere alla formattazione GUID) |
Quando si creano colori personalizzati per Visual Studio, questi colori devono essere definiti per i temi seguenti. Se non esistono colori per un tema specifico, Visual Studio tenta di caricare i colori mancanti dal tema Chiaro.
| Nome tema | GUID tema |
|---|---|
| Light | {de3dbbcd-f642-433c-8353-8f1df4370aba} |
| Scuro | {1ded0138-47ce-435e-84ef-9ec1f439b749} |
| Blue | {a4d6a176-b948-4b29-8c66-53c97a1ed7d0} |
| Contrasto elevato | {a4d6a176-b948-4b29-8c66-53c97a1ed7d0} |
| Nome tema | GUID tema |
|---|---|
| Light | {de3dbbcd-f642-433c-8353-8f1df4370aba} |
| Scuro | {1ded0138-47ce-435e-84ef-9ec1f439b749} |
| Contrasto elevato | {a4d6a176-b948-4b29-8c66-53c97a1ed7d0} |
Categoria
L'elemento <Category> definisce una raccolta di colori in un tema. Una categoria deve contenere almeno un <elemento Color> . Gli elementi di categoria sono definiti come segue:
<Category Name="name" GUID="guid">
<!-- one or more Color elements -->
</Category>
| Attributo | Definizione |
|---|---|
| Nome | [Obbligatorio] Nome della categoria |
| Identificatore Unico Globale (GUID) | [Obbligatorio] GUID della categoria (deve corrispondere alla formattazione GUID) |
I nomi di categoria forniscono raggruppamenti logici e devono essere definiti il più piccolo possibile.
I nomi delle categorie :::moniker range>="vs-2026" forniscono raggruppamenti logici per i colori che possono essere usati per un ambito simile a livello generale. In Visual Studio 2026, il sistema di progettazione, inclusa la categorizzazione dei colori, è stato semplificato per semplificare l'applicazione coerente e gli aggiornamenti centralizzati. Ad esempio, un tema di Visual Studio 2026 include queste categorie: - Decorative I colori possono essere usati per distinguere oggetti come grafici e schede colorate.
-
Shell i colori vengono usati per controlli e superfici comuni simili a Windows :::moniker-end
Colore
L'elemento <Color> definisce un colore per un componente o uno stato dell'interfaccia utente. La combinazione di denominazione preferita per un colore è [tipo di interfaccia utente][Stato]. Non usare la parola "color", perché è ridondante. Un colore deve indicare chiaramente il tipo di elemento e le situazioni, o "stato", per cui verrà applicato il colore. Un colore non deve essere vuoto e deve contenere uno o entrambi gli <elementi Background> e <Foreground> . Gli elementi colore sono definiti come segue:
L'elemento <Color> definisce un colore per un tipo di elemento dell'interfaccia utente. La combinazione di denominazione preferita per un colore è [Type][Part][Level]: - Type è il ruolo principale svolto dal colore nell'interfaccia utente, ad esempio AccentBackgroundControl, , , Texte così viaPart, è un'applicazione più granulare, ad esempio Fill, Stroke.
-
Level descrive lo stato o il passaggio del colore in una rampa, ad esempio Default, Disabled, Primary, Secondarye così via. Non usare la parola "color", perché è ridondante. Concentrarsi sull'utilizzo previsto di alto livello anziché su una funzionalità specifica, in modo che il token di colore possa essere riutilizzabile per controlli e stati simili per una maggiore coerenza. Un colore deve indicare chiaramente il tipo di elemento e le situazioni, per cui verrà applicato il colore. Un colore non deve essere vuoto e deve contenere uno o entrambi gli <elementi Background> e <Foreground> . Gli elementi colore sono definiti come segue:
<Color Name="name">
<Background /> <!-- zero or one Background element -->
<Foreground /> <!-- zero or one Foreground element -->
</Color>
| Attributo | Definizione |
|---|---|
| Nome | [Obbligatorio] Nome del colore |
Sfondo e/o primo piano
Gli <elementi Background> e <Foreground> definiscono il valore e il tipo di un colore per lo sfondo o il primo piano di un elemento dell'interfaccia utente. Questi elementi non hanno elementi figlio.
<Background Type="type" Source="int" />
<Foreground Type="type" Source="int" />
| Attributo | Definizione |
|---|---|
| TIPO | [Obbligatorio] Tipo del colore. Può essere uno dei seguenti: CT_INVALID: Il colore non è valido o non è impostato. CT_RAW: Valore ARGB non elaborato. CT_COLORINDEX: NON USARE. CT_SYSCOLOR: Colore di sistema di Windows da SysColor. CT_VSCOLOR: Colore di Visual Studio da __VSSYSCOLOREX. CT_AUTOMATIC: Colore automatico. CT_TRACK_FOREGROUND: NON USARE. CT_TRACK_BACKGROUND: NON USARE. |
| Fonte | [Obbligatorio] Valore del colore rappresentato in esadecimale |
Tutti i valori supportati dall'enumerazione __VSCOLORTYPE sono supportati dallo schema nell'attributo Type. È tuttavia consigliabile usare solo CT_RAW e CT_SYSCOLOR.
Tutti insieme
Questo è un semplice esempio di un file di .xml tema valido:
<Themes>
<Theme Name="Light" GUID="{de3dbbcd-f642-433c-8353-8f1df4370aba}">
<Category Name="MyCategory" GUID="{0A96238B-70CE-4479-9170-EECEAA3FCD58}">
<Color Name="MyActiveBorder">
<Background Type="CT_RAW" Source="FFCCCEDB" />
</Color>
</Category>
</Theme>
</Themes>
Come usare lo strumento
Syntax
File XML<>vsixColorCompiler <PkgDef file><facoltativo Args>
Argomenti
| Cambia nome | Notes | Obbligatorio o facoltativo |
|---|---|---|
| Senza nome ( file.xml) | Si tratta del primo parametro senza nome ed è il percorso del file XML da convertire. | Obbligatorio |
| Senza nome (file con estensione pkgdef) | Questo è il secondo parametro senza nome ed è il percorso di output per il file con estensione pkgdef generato. Impostazione predefinita: <XML Filename.pkgdef> |
Opzionale |
| /noLogo | L'impostazione di questo flag impedisce la stampa delle informazioni sul prodotto e sul copyright. | Opzionale |
| /? | Stampare le informazioni della Guida. | Opzionale |
| /help | Stampare le informazioni della Guida. | Opzionale |
Examples
VsixColorCompiler D:\xml\colors.xml D:\pkgdef\colors.pkgdef
VsixColorCompiler D:\xml\colors.xml /noLogo
Note
Questo strumento richiede l'installazione della versione più recente del runtime di Microsoft Visual C++.
Sono supportati solo singoli file. La conversione bulk tramite percorsi di cartella non è supportata.
Lo strumento è disponibile in
<VS Install Path>\VSSDK\VisualStudioIntegration\Tools\Bin\
Output di esempio
Il file con estensione pkgdef generato dallo strumento sarà simile alle chiavi seguenti:
[$RootKey$\Themes\{de3dbbcd-f642-433c-8353-8f1df4370aba}\Environment]
"Data"=hex:3a,00,00,00,0b,00,00,00,01,00,00,00,c3,d9,4e,62,fd,bd,fa,41,96,c3,7c,82,4e,a3,2e,3d,01,00,00,00,0c,00,00,00,41,63,74,69,76,65,42,6f,72,64,65,72,01,cc,ce,db,ff,01,33,31,24,ff
[$RootKey$\Themes\{de3dbbcd-f642-433c-8353-8f1df4370aba}\TreeView]
"Data"=hex:38,00,00,00,0b,00,00,00,01,00,00,00,8e,f0,ec,92,13,8b,f4,4c,99,e9,ae,26,92,38,21,85,01,00,00,00,0a,00,00,00,42,61,63,6b,67,72,6f,75,6e,64,01,f5,f5,f5,ff,01,1e,1e,1e,ff
Aggiornare i temi per l'uso con Visual Studio 2026
È possibile aggiornare i temi esistenti che funzionano con Visual Studio 2022 o versioni precedenti per lavorare con Visual Studio 2026. Vedere Eseguire la migrazione dei temi a Visual Studio 2026.