Markdown è un linguaggio di markup piuttosto moderno che permette di scrivere del semplice testo con formattatazione in modo tale che possa essere convertito facilmente in HTML, per i sistemi che non lo capiscono, oppure usato così com'è da strumenti come, ad esempio, GitHub.
Anche la Universal Windows Platform, seppur non in modo nativo, include un controllo che permette la scrittura e la visualizzazione di contenuto formattato in markdown: il controllo XAML MarkdownTextBlock esposto dal Windows Community Toolkit infatti, effettua parsing e renderizza contenuto formattato in modo molto efficiente sfruttando, dietro le quinte, alcuni elementi nativi della piattaforma come i controlli Image per le immagini, RichEditTextBox per le caselle di testo e così via...
Per utilizzare il controllo è sufficiente aggiungerlo nello XAML e scrivere il markdown direttamente nella proprietà Text, come mostrato di seguito:
<controls:MarkdownTextBlock Text="**This is *Markdown*!**" />
Poiché il markdown permette la formattazione, ma la Universal Windows Platform consente anche la customizzazione, è facile andare ad implementarsi degli stili personalizzati per gli header:
<controls:MarkdownTextBlock Text="**This is *Markdown*!**" Header1FontSize="48" Header1FontWeight="Bold" />
Oppure anche per blocchi di codice:
private void MarkdownText_CodeBlockResolving(object sender, CodeBlockResolvingEventArgs e) { if (e.CodeLanguage == "csharp") { e.Handled = true; e.InlineCollection.Add(new Run { Foreground = new SolidColorBrush(Colors.Red), Text = e.Text, FontWeight = FontWeights.Bold }); } }
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Triggerare una pipeline su un altro repository di Azure DevOps
Generare HTML a runtime a partire da un componente Razor in ASP.NET Core
Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
Documentare i servizi REST con Swagger e OpenAPI con .NET 9
Il nuovo controllo Range di Blazor 9
Selettore CSS :has() e i suoi casi d'uso avanzati
Fornire parametri ad un Web component HTML
Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
Sfruttare GPT-4o realtime su Azure Open AI per conversazioni vocali
Supportare lo HierarchyID di Sql Server in Entity Framework 8
Utilizzare Hybrid Cache in .NET 9
.NET Conference Italia 2024
I più letti di oggi
- .NET Conference Italia 2024 - Milano
- Develop and distribute Azure Functions using K8s and CI/CD
- Disponibile la versione finale di Hyper-V: la virtualizzazione per Windows Server 2008
- Speciale Mastering Entity Framework
- Velocity arriva alla CTP3
- Silverlight Summer: un'estate speciale piena di Style per i controlli Silverlight!
- Disponibile la versione beta di Silverlight 4.0
- Mono 0.13: ora anche web services
- .NET Alerts Software Development Kit