わかりました、これと同様の質問が他にもいくつかあることは知っていますが、AlternationIndex を ListBox または ListView で機能させるには実際の問題があります。
私のxamlはそのようなものです:
<ListBox BorderThickness="0" Name="RecentItemsListBox" HorizontalAlignment="Stretch"
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
ItemsSource="{Binding Path=RecentFilesList}" AlternationCount="100">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel />
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Path=(ItemsControl.AlternationIndex),
RelativeSource={RelativeSource Mode=TemplatedParent}, Converter={StaticResource IncCnvrtr}}"
Foreground="DimGray" FontSize="20" FontWeight="Bold"
HorizontalAlignment="Left" Margin="5,5,15,5" />
<StackPanel VerticalAlignment="Center">
<TextBlock Text="{Binding ClassName}" Foreground="Black" />
<TextBlock Text="{Binding DisplayName}" Foreground="Black" />
</StackPanel>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
コンバーターは値を 1 ずつ増やします。これは正常に機能し、コンバーターに送信される値が常に 0 であることを確認するためにデバッグしました。
クレイジーなことは、これは ListBox または ListView のみです。
それを ItemsControl に変更するとすぐに、インデックス作成は正しくなりますが、項目コントロールは必要ありません。付属のすべての機能を備えたリスト ボックスが必要です。
なぜこれが起こっているのかについて何か考えがあれば、私はあなたの助けに感謝します.
ありがとう
キーラン