Szukam czegoś wzdłuż tych linii:Jak wstawić powiązanie w środku zdania bloku TextBlock w WPF?
<TextBlock
Grid.Column="1"
Text="Welcome, {Binding UserName}!" />
Będzie to oczywiście faktycznie wyświetlić tekst „{Binding username}” dla użytkownika zamiast dekodować go, ale wiem, że można zrobić coś takiego z ASP.NET, więc mam nadzieję, że istnieje sposób, aby to działało w WPF.
Jestem już świadomy, że mogę użyć IValueConverter
... Szukam czegoś, co mogę zrobić wyłącznie w znacznikach, jeśli to możliwe.
EDIT:
podstawie najbardziej doskonałe rozwiązanie @Matt Hamiltona, próbowałem wcisnąć kopertę i wiążą dwie wartości w tym samym TextBlock
użyciu MultiBinding
. Działa jak czar:
<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>
produkuje to: Attempts: 1 of 4
(zakładając AttemptNumber = 1
i AttemptCount = 4
).
Ja również znaleźć ten link pomocne dla zastanawianie się, który formatuje umieścić po dwukropku:
http://msdn.microsoft.com/en-us/library/fbxft59x.aspx
Whee, to miłe. Jednak kolejność jest dziwna, ponieważ jest dokładnie odwrotna niż zwykle [string] :: Format. – Joey
Piękne! Prowadzi mnie to do innego pytania: czy możliwe jest posiadanie wielu powiązanych wartości lub czy jesteś ograniczony do jednego? Dzięki. – devuxer
Odpowiedziałem na moje własne pytanie (zobacz moją edycję). – devuxer