La UI Meta Extension gestisce il registro dei componenti e fornisce supporto IntelliSense per i file PXAML.
La Meta Extension offre:
Iniziate con < e premete Ctrl+Space:
La lista mostra tutti i controlli disponibili con:
All'interno di un elemento, Ctrl+Space mostra gli attributi disponibili:
<Button | > <!-- Cursore qui, premere Ctrl+Space -->
Vengono mostrati:
Per attributi con valori definiti:
<TextBox TextAlignment="|"/> <!-- Cursore qui -->
Suggerimenti: Left, Center, Right, Justify
| Comando | Descrizione |
|---|---|
WVDS: Refresh Component Registry | Ricarica i metadati dei componenti |
Il registro organizza i componenti per categorie:
| Categoria | Controlli inclusi |
|---|---|
| Layout | Grid, StackPanel, DockPanel, WrapPanel, Canvas |
| Input | TextBox, PasswordBox, ComboBox, CheckBox, RadioButton |
| Display | Label, TextBlock, Image, Border, Separator |
| Action | Button, ToggleButton, RepeatButton, MenuButton |
| Lists | ListBox, ListView, TreeView, DataGrid |
| Navigation | TabControl, TabItem, Menu, Toolbar |
| Containers | GroupBox, Expander, ScrollViewer, Popup |
Il registro conosce vari tipi di proprietà:
| Tipo | Esempio | Comportamento IntelliSense |
|---|---|---|
| String | Text=„Hello“ | Input libero |
| Number | Width=„200“ | Input numerico |
| Boolean | IsEnabled=„True“ | Selezione True/False |
| Enum | Visibility=„Visible“ | Mostra valori enum |
| Brush | Background=„Red“ | Color picker o nomi brush |
| Thickness | Margin=„10,5,10,5“ | Quattro valori (L,T,R,B) |
I componenti personalizzati possono essere aggiunti al registro.
Nel componente Pascal:
type {$M+} [ComponentInfo('MyButton', 'Custom button with icon', 'Controls')] TMyButton = class(TWvdSButton) published [PropertyInfo('Icon path', 'Images')] property IconPath: string read FIconPath write SetIconPath; end;
In alternativa tramite file di metadati:
{
"components": [
{
"name": "MyButton",
"description": "Custom button with icon",
"category": "Controls",
"properties": [
{
"name": "IconPath",
"type": "string",
"description": "Path to the icon image"
}
]
}
]
}
La Meta Extension non ha impostazioni dirette. Utilizza la configurazione della Core Extension.
I metadati dei componenti vengono memorizzati in cache per un accesso più rapido.
In caso di modifiche ai componenti:
WVDS: Refresh Component Registry%APPDATA%\Code\User\globalStorage\wvds.wvds-vscode-ui-meta~/.config/Code/User/globalStorage/wvds.wvds-vscode-ui-meta~/Library/Application Support/Code/User/globalStorage/wvds.wvds-vscode-ui-metaCausa: Registro non caricato o file non riconosciuto.
Soluzione:
WVDS: Refresh Component RegistryCausa: Componente non registrato o cache obsoleta.
Soluzione:
Causa: Metadati obsoleti o errati.
Soluzione:
| Proprietà | Valore |
|---|---|
| Extension ID | wvds.wvds-vscode-ui-meta |
| Attivazione | onLanguage:pxaml, onLanguage:pascal |
| Dipendenze | wvds-vscode-core |
| Min. VS Code | 1.85.0 |