2010-12-08 5 views
1

ListBoxは文字列のCollectionにバインドされていました。コレクション内の要素のインデックスを表示するButtonコントロールにしたいと思います。wpf、バインドでコレクションのインデックスを表示するにはどうすればいいですか?

<Style TargetType="ListBoxItem"> 
     <Setter Property="Margin" Value="2"/> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate> 
        <Grid Background="{TemplateBinding Background}"> 
         <Border BorderThickness="1"> 
          <Button Height="20" Width="20" Content="{Binding ???}" Margin="2"> 
          </Button> 
         </Border> 
        </Grid> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
     </Style> 

答えて

4

あなたはNumbered listbox でコードを '七' で説明したアプローチに従えば、これらのlinks.Youはあなたが

WPF: Binding lists in XAML- how can an item know its position in the list?

Numbered listbox

探しているものを見つけることを確認する必要があり何かのように見える

<Button Height="20" Width="20" Content="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplatedParent.(ItemsControl.AlternationIndex)}" Margin="2"> 

+0

+2

+1は、同様のことを考えていました。 2つのこと:1)おそらくAlternationCountをListBoxの100000のように設定したいと思うでしょう。それ以外の場合は、すべて0になります。 2)番号付けは0から始まり1ではなく始めるので、コンバータを使用して値を1だけ増やすことができます –

関連する問題