wpf listbox scroll itemtemplate controltemplates

Desplazar elementos de la lista en wpf



listbox scroll (1)

¿Has intentado vincular X al WrapPanel, mientras usas un convertidor?

El convertidor obtendrá la instancia de WrapPanel como parámetro y luego podrá analizar sus propiedades y devolver un valor basado en el ancho o la cantidad de elementos.

Supongo que la siguiente imagen muestra el problema mejor que los textos ...

texto alternativo http://img179.imageshack.us/img179/8949/samplescrollingitems.png

Eso es lo que necesito

<ListBox x:Name="NamesListBox" ItemsSource="{Binding}"> <ListBox.ItemsPanel> <ItemsPanelTemplate> <WrapPanel x:Name="ItemWrapPanel"> <WrapPanel.RenderTransform> <TranslateTransform x:Name="ItemWrapPanelTransformation" X="0" /> </WrapPanel.RenderTransform> <WrapPanel.Triggers> <EventTrigger RoutedEvent="WrapPanel.Loaded"> <BeginStoryboard> <Storyboard> <DoubleAnimation Storyboard.TargetName="ItemWrapPanelTransformation" Storyboard.TargetProperty="X" To="-1000" From="{Binding ElementName=ScrollingListItemsWindow, Path=Width}" Duration="0:0:9" RepeatBehavior="100" /> </Storyboard> </BeginStoryboard> </EventTrigger> </WrapPanel.Triggers> </WrapPanel> </ItemsPanelTemplate> </ListBox.ItemsPanel> <ListBox.ItemTemplate> <DataTemplate> <Grid> <Label Content="{Binding}" /> </Grid> </DataTemplate> </ListBox.ItemTemplate> </ListBox>

es lo que hice Pero aquí no quiero el código duro -1000 para el valor X, sino que quiero determinarlo en función de la longitud del panel de ajuste / número de elementos. Puede alguien ayudarme con esto ??

La razón por la que elijo el cuadro de lista es que la cantidad de elementos puede aumentar o disminuir en cualquier momento y se adapta mejor al problema.

Si tiene alguna otra idea, sugiérala también.

Gracias.