Tengo un WPF DataGrid
vinculado a ObservableCollection
. Cada elemento en mi colección tiene propiedad que es un List<someObject>
. En el panel de detalles de mi fila, me gustaría escribir bloques de texto formateados para cada elemento de esta colección. El resultado final sería algo equivalente a:WPF Repeater (como) control para la fuente de recolección?
<TextBlock Style="{StaticResource NBBOTextBlockStyle}" HorizontalAlignment="Right">
<TextBlock.Inlines>
<Run FontWeight="Bold" Text="{Binding Path=Exchanges[0].Name}" />
<Run FontWeight="Bold" Text="{Binding Path=Exchanges[0].Price}" />
<LineBreak />
<Run Foreground="LightGray" Text="{Binding Path=Exchanges[0].Quantity}" />
</TextBlock.Inlines>
</TextBlock>
<TextBlock Style="{StaticResource NBBOTextBlockStyle}">
<TextBlock.Inlines>
<Run FontWeight="Bold" Text="{Binding Path=Exchanges[1].Name}" />
<Run FontWeight="Bold" Text="{Binding Path=Exchanges[1].Price}" />
<LineBreak />
<Run Foreground="LightGray" Text="{Binding Path=Exchanges[1].Quantity}" />
</TextBlock.Inlines>
</TextBlock>
y así sucesivamente 0-n veces.
He intentado usar ItemsControl
para esto: sin embargo
<ItemsControl ItemsSource="{Binding Path=Exchanges}">
<DataTemplate>
<Label>test</Label>
</DataTemplate>
</ItemsControl>
, esto parece ser sólo significó para las fuentes más estáticas, ya que desencadena la siguiente excepción (colección no se altera después de la creación):
ItemsControl La operación no es válida mientras ItemsSource está en uso. Acceda y modifique elementos con ItemsControl.ItemsSource en su lugar *
¿Hay alguna otra forma de lograr esto?
El ItemsControl debe estar bien. Por lo general, obtiene este error al utilizar la propiedad Items de ItemsControl mientras su ItemsSource está vinculado, ¿podría ser ese el caso? –