J'essaye de formater un Tweet en utilisant la liaison de données. Ce que je dois faire est de diviser la valeur de texte du tweet en fonction du type de contenu. Je dois ajouter un peu de formatage de couleur à la partie http: // ... de la valeur du texte.Mise en forme de texte dans un TextBlock en utilisant uniquement DataBinding en XAML
Voici le kicker, je voudrais le faire en utilisant uniquement la liaison de données XAML.
<TextBlock x:Name="Tweet1" FontWeight="Bold" Height="207.236"
LineHeight="55" TextAlignment="Left" TextWrapping="Wrap"
Width="1614.646" Text="{Binding XPath=/statuses/status[2]/text}"
FontSize="56" FontFamily="Segoe Book"
Foreground="{DynamicResource TextColor-Gray}" />
// doit finir par ressembler à
<TextBlock x:Name="Tweet1" FontWeight="Bold" ... FontSize="56" FontFamily="Segoe Book">
<Run Foreground="{DynamicResource TextColor-Gray}" >This is a Tweet with a hyperlink</Run>
<Run Foreground="{DynamicResource TextColor-Pink}" >http://www.mysite.com</Run>
</TextBlock>
Voici un Regex je pourrais utiliser pour diviser la valeur de texte, mais je suis en train d'utiliser strictement DataBinding.
Regex regUrl = new Regex(@"/http:\/\/\S+/g");
Suggestions?
+1 Ne peut pas être fait comme le souhaite l'OP. – Ragepotato
Ce que je pensais. Merci de confirmer. Je posterai mon convertisseur quand j'ai fini de le construire. – discorax
Vous ne pouvez pas lier à Inlines. "La propriété Inlines est en lecture seule et ne peut pas être définie par le balisage" Toutes les autres suggestions? – discorax