wpf - Formato de cadena usando MultiBinding?
format string xaml (1)
estás tratando de unir una cuerda a un objeto. Pero StringFormat requiere que su objetivo sea un tipo de cadena.
intente poner un TextBlock en el contenido de su etiqueta y vincular sus datos a él
<StackPanel>
<Slider x:Name="sl1" Minimum="10" Maximum="100"/>
<Slider x:Name="sl2" Minimum="10" Maximum="100"/>
<Label x:Name="label13" Background="Yellow" Foreground="Black">
<Label.Content>
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}{0} x {1} Test">
<Binding ElementName="sl1" Path="Value" />
<Binding ElementName="sl2" Path="Value" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
</Label.Content>
</Label>
</StackPanel>
EDITAR su clase La película debe implementar la interfaz INotificationPropertyChanged y sus dos propiedades deben elevar el evento de propiedad cambiado con sus nombres de propiedad.
espero que esto ayude
Estoy tratando de mostrar una cadena en XAML usando el control Label. El siguiente es mi código XAML:
<Label Height="28" HorizontalAlignment="Left" Margin="233,68,0,0" Name="label13" VerticalAlignment="Top">
<Label.Content>
<MultiBinding StringFormat="{}{0} x {1}">
<Binding Path="Width" />
<Binding Path="Height" />
</MultiBinding>
</Label.Content>
Ancho y alto son dos propiedades de mi clase Película. Quiero que se muestre la etiqueta: "Ancho x alto" ej. 800 x 640 Sin embargo, el control de la etiqueta permanece vacío. Cualquier ayuda es apreciada. QUIERO HACER ESTO SIN UTILIZAR UN CONVERTIDOR.
He modificado mi xaml usando un TextBlock en lugar de Label. Pero aún así no se mostrará la salida.
<TextBlock Height="28" HorizontalAlignment="Left" Margin="233,68,0,0" Name="label13" VerticalAlignment="Top">
<TextBlock.Text>
<MultiBinding StringFormat="{}{0} x {1}">
<Binding Path="Width" />
<Binding Path="Height" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>