wpf - ¿Cuál es la sintaxis xaml más corta para Multibinding usando StringFormat con enlaces múltiples?
string format xaml xamarin (1)
Según MSDN, su segundo ejemplo ("sintaxis más corta utilizando MultiBinding con un solo enlace") no debería funcionar, ni en .net 3.5 ni en .NET 4.0 :
Nota:
MultiBinding y PriorityBinding no admiten una sintaxis de extensión XAML (a pesar de compartir la misma clase BindingBase, que realmente implementa el comportamiento XAML para Binding).
Por lo tanto, si funciona para usted, es por accidente y no es un comportamiento compatible.
PD: No es necesario usar MultiBinding para un enlace único . Lo siguiente debería ser suficiente:
<TextBlock>
<TextBlock.Text>
<Binding Path="EmployeeName" />
</TextBlock.Text>
</TextBlock>
o
<TextBlock Text="{Binding Path=EmployeeName}"/>
o incluso más corto
<TextBlock Text="{Binding EmployeeName}"/>
para un enlace único, utilizamos:
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}{0}">
<Binding Path=EmployeeName/>
</MultiBinding>
</TextBlock.Text>
</TextBlock>
o una sintaxis más corta:
<TextBlock
Text="{MultiBinding StringFormat=/{0/}, Bindings={Binding Path=EmployeeName}}"/>
Ahora, si tiene multiburación:
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}{0}, {2}">
<Binding Path="EmployeeName"/>
<Binding Path="Age"/>
</MultiBinding>
</TextBlock.Text>
</TextBlock>
Me preguntaba, ¿cuál sería su sintaxis más corta?
<TextBlock
Text="{MultiBinding StringFormat=/{0/}, Bindings={Binding ??????}"/>