Я ищу что-то вроде этого:
<TextBlock
Grid.Column="1"
Text="Welcome, {Binding UserName}!" />
Это, конечно, на самом деле будет отображать текст «{Binding UserName}» для пользователя, а не декодировать его, но я знаю, что вы можете сделать что-то подобное с ASP.NET, поэтому я надеюсь, что есть способ получить это работать в WPF.
Я уже знаю, что могу использовать IValueConverter
... Я ищу что-то, что я могу сделать, если возможно, чисто в разметке.
EDIT:
Основываясь на самом превосходном решении @Matt Hamilton, я попытался протолкнуть конверт и связать два значения в один TextBlock
, используя MultiBinding
. Работает как шарм:
<TextBlock
Style="{StaticResource TextBlock_ValueStyle}"
Grid.Column="1">
<TextBlock.Text>
<MultiBinding
StringFormat="{}Attempts: {0:G} of {1:G}">
<Binding
Path="AttemptNumber" />
<Binding
Path="AttemptCount" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
Это дает: Attempts: 1 of 4
(при условии AttemptNumber = 1
и AttemptCount = 4
).
Я также нашел эту ссылку полезной для определения, какие форматы ставить после двоеточия:
http://msdn.microsoft.com/en-us/library/fbxft59x.aspx