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
Utilizzare il proxy del WebServer di Angular per simulare chiamate ad API sullo stesso dominio
Effettuare un loop di una GitHub Action
Code generator con C#
Associare Application Insights ad una Web App tramite Azure ARM
GitHub Actions e Terraform: l'infrastruttura, dalla definizione al deploy
Dependency injection con Minimal API di ASP.NET Core
Retry automatico di un task di una pipeline di Azure DevOps
DateOnly e TimeOnly in .NET: e io che ci faccio?
Dichiarare una struct come record in C#
Utilizzare le Promise in Javascript - seconda parte
Generare un QR Code da ASP.NET Web API
Compilare automaticamente applicazioni .NET 6 con le pipeline di Azure DevOps e GitHub Action
I più letti di oggi
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Gestire form con più di un pulsante submit in ASP.NET MVC
- Usare TryUpdateModelAsync per aggiornare le entity nelle action di POST in ASP.NET Core MVC
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!