Silverlightのテキストを強調表示(背景色は黄色)

Silverlight TextblockまたはRichTextBoxでテキストを強調表示する必要があります。私は、RTBのテキスト実行にタグを追加しようとしましたが、次のようなテキストに単純に表示されます:

Some text in a RTB

私はちょうどこのようなテキストを選択しようとしました:

myRTB.Selection.Select(textPtr1, textPtr2);

標準の青色のハイライトであることを示します。私は背景色を黄色にする必要がありますが、私はRunのForeground色のみを変更できるように見えます。なぜそれが、私のための任意のアイデアですか?

更新:

私はこのようなRunを追加する値コンバータを持つTextBlockだけを使ってみました:

return String.Format("{0}", value.ToString());

それでもTextBlockは書式付きテキストではなくタグを表示します。

0
私がwrognでない場合:あなたのテキスト
追加された 著者 NestorArturo,
この遅れて申し訳ありません...コードにテキストを追加する場合は、この "実行"をテキストブロックの "インライン"プロパティに追加できます。
追加された 著者 NestorArturo,
RTBにバインドされているテキストにxmlタグを追加するだけで、タグがRTBのテキストに表示されます。
追加された 著者 Graeme,
Silverlightでテキストをプログラムで強調表示するソリューションを探しています。何かお手数ですか?
追加された 著者 Graeme,
私はバインディングコンバータ経由でRunを追加しようとしました - 上記を参照してください。それは動作しません - タグは文字通り表示されます。 InLinesプロパティを見ていきます。
追加された 著者 Graeme,

2 答え

Silverlightテキストブロックのテキストを強調表示する必要があります

textBlock を枠線で囲み、 mouseEntermouseLeave で枠線の色を変更することができます。

XAML:

 
        
  

コードの背後にある:

Private Sub myTxtBorder_MouseEnter(sender As System.Object, e As System.Windows.Input.MouseEventArgs)
        myTxtBorder.Background = New SolidColorBrush(Colors.Yellow)
    End Sub

    Private Sub myTxtBorder_MouseLeave(sender As System.Object, e As System.Windows.Input.MouseEventArgs)
        myTxtBorder.Background = New SolidColorBrush(Colors.White)
    End Sub
0
追加された
しかし、私は特定の単語をハイライトする必要があります - したがって、実行時にこれらの特定の単語にフライを追加する必要があります。どうやってやるの?
追加された 著者 Graeme,
テキストブロックはリストボックスにあり、それぞれには数百語の単語が含まれます。リストには20項目があり、それぞれの項目には2〜3回の強調表示が付きます。
追加された 著者 Graeme,
@Graeme:境界線の手法を使用すると、強調したい単語を別のtextBlockに抽出し、境界線で囲む必要があります。テキストがたくさんある場合は、多くのコントロールで終わるでしょうが、それは良いことではありません。いくつのテキストを扱っていますか?
追加された 著者 MichaelS,

Liquid.RichTextBoxが役に立ちます。

http://vectorlight.net/silverlight/controls/rich_textbox.aspx

0
追加された