4

ItemsControlを使用しているのアイテムインデックスを表示する方法を探していますDataTemplate。だから私はこの良い質問を見つけました。その質問でアイデアを使用しましたが、すべての値がゼロです!私のコードとその質問のコードの唯一の違いは、私のコントロール(インデックスを表示する)が直接にないことDataTemplateです。それはにGridあり、GridはにありますDataTemplate

これが私のコードです:

<ItemsControl ItemsSource="{Binding }">
    <ItemsControl.ItemTemplate>
        <DataTemplate>
            <Grid>
                // column definitions
                <Label Content="{Binding RelativeSource={RelativeSource
                       Mode=TemplatedParent}, 
                       Path=(ItemsControl.AlternationIndex)}"/>
                // some other controls
            </Grid>
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>

結果:

0
0
0
// and so on

私が表示されることを期待するもの:

0
1
2
// and so on

このコードの何が問題になっていますか?

4

1 に答える 1

11

プロパティのAlternationCountプロパティを設定する必要があります。

<ItemsControl ItemsSource="{Binding }" AlternationCount={Binding CountOfItems}">
<ItemsControl.ItemTemplate>
    <DataTemplate>
        <Grid>
            // column definitions
            <Label Content="{Binding RelativeSource={RelativeSource
                   Mode=TemplatedParent}, 
                   Path=(ItemsControl.AlternationIndex)}"
                   />
            // some other controls
        </Grid>
    </DataTemplate>
</ItemsControl.ItemTemplate>

于 2013-02-22T10:03:51.237 に答える