Atualmente, estou usando o TextBlock
abaixo para vincular o valor de uma propriedade chamada Name
:
<TextBlock Text="{Binding Name}" />
Agora, quero vincular outra propriedade chamada ID
à mesma TextBlock
.
É possível vincular dois ou mais valores ao mesmo TextBlock
? Isso pode ser feito com concatenação simples, como Name + ID
e, se não, como mais isso poderia ser abordado?
wpf
data-binding
binding
textblock
multibinding
Gastar
fonte
fonte
DataGrid
comportamento de classificação, infelizmente não funcionará. Uma solução mais apropriada seria criar uma propriedade somente leitura em seu modelo com o formato de sequência apropriado para o qual vincular. Escusado será dizer que esta é uma maneira elegante de formatar rapidamente, embora um pouco detalhado.XamlParseException: A 'Binding' cannot be set on the 'Path' property of type 'Binding'. A 'Binding' can only be set on a DependencyProperty of a DependencyObject.
Sei que é tarde demais, mas pensei em acrescentar outra maneira de fazer isso.
Você pode tirar proveito do fato de que a propriedade Text pode ser configurada usando " Run s", para que você possa configurar várias ligações usando uma Run para cada uma. Isso é útil se você não tiver acesso ao MultiBinding (que eu não encontrei ao desenvolver para o Windows Phone)
fonte
Se estes forem apenas blocos de texto (e, portanto, uma ligação unidirecional) e você quiser concatenar valores, basta vincular dois blocos de texto e colocá-los em um painel de pilha horizontal.
Isso exibirá o texto (que é o que todos os Textblocks fazem) sem precisar fazer mais nenhuma codificação. Você pode colocar uma pequena margem neles para fazê-los parecer certos.
fonte
Use um ValueConverter
e na marcação
. . .
fonte