3

XAMLでは、挿入すると

<TextBlock Text="Hello World" />

「HelloWorld」という単語が表示されます。

挿入した場合

<TextBlock Text="{Binding}" />

データバインディング機能をトリガーします。しかし、本当に表示テキストを「{Binding}」にしたい場合はどうなりますか?」

XAML文字列にエスケープ文字に相当するものはありますか?

または、これを行うための私の唯一の解決策です:

<TextBlock>Binding</TextBlock>
4

4 に答える 4

11

「{}」を使用して文字列全体をエスケープできます。

<TextBlock Text="{}{Binding}"/>

または、個々の中括弧を円記号でエスケープできます。

<TextBlock Text="{Binding Foo,StringFormat='Hello \{0\}'}" />
于 2009-09-07T07:46:11.467 に答える
6

Matt の応答に従って「{}」でエスケープする方法ですが、完全を期すために、CDATA セクションを使用することもできます。

<TextBlock>
    <TextBlock.Text>
        <![CDATA[{Binding}]]>
    </TextBlock.Text>
</TextBlock>

ただし、複数行のテキストには CDATA セクションの方が便利です。

于 2009-09-07T09:44:14.767 に答える
1

これを試して:

<TextBlock Text="&#123;Binding&#125;" />

そして、値を読み取るときにエスケープを解除します。

于 2009-09-07T07:48:56.403 に答える
0

{ と } 文字をエスケープする必要があるため、最終的には<TextBlock Text="\{Binding\}" />

于 2009-09-07T07:49:28.480 に答える