Estoy probando el contenido de un carrito de compras en un ItemsControl(ListBox)
. Para ello, he creado la siguiente DataTemplate
:Cómo hacer que DockPanel complete el espacio disponible
<DataTemplate x:Key="Templates.ShoppingCartProduct"
DataType="{x:Type viewModel:ProductViewModel}">
<DockPanel HorizontalAlignment="Stretch">
<TextBlock DockPanel.Dock="Left"
Text="{Binding Path=Name}"
FontSize="10"
Foreground="Black" />
<TextBlock DockPanel.Dock="Right"
Text="{Binding Path=Price, StringFormat=\{0:C\}}"
FontSize="10"
Foreground="Black" />
</DockPanel>
</DataTemplate>
Cuando los elementos se muestran en mi carro de la compra sin embargo, el nombre y el precio TextBlocks
están sentados justo al lado uno del otro, y hay una cantidad extremadamente grande de espacios en blanco en el lado derecho.
¿Se preguntaba cuál era el mejor método para forzar al DockPanel
a estirar para llenar todo el espacio disponible por el ListItem
?
He intentado utilizar que la unión y parece ser la causa de la ListBoxItem a crecer continuamente en tamaño, cuando se ve con Snoop, vi el ancho tanto de la ListBoxItem y la DockPanel exceda de 300.000. –
Intenta vincular al Actual Ancho del ListBox, entonces ... –
Oh, vale, ya entendí ... debes establecer LastChildFill = "False" en el DockPanel, de lo contrario, el segundo TextBlock se alarga –