В ListView, содержащем кнопки, как получить индекс нажатой кнопки?

У меня есть ListView, содержащий только кнопки. То, что я хочу сделать, довольно просто, я хочу иметь индекс кнопки, которая была нажата. Счетчик списка варьируется от 0 до 100, поэтому, когда пользователь нажимает на кнопку 6, мне нужно это число для обработки.

Я определил свой ListView следующим образом:

<ListView Name="myListView" 
          ItemsSource="{Binding Source={StaticResource myDataModel}, 
          Path=StatusList, 
          Mode=OneWay}">
          <ListView.ItemsPanel>
                <ItemsPanelTemplate>
                    <StackPanel Orientation="Horizontal"></StackPanel>
                </ItemsPanelTemplate>
          </ListView.ItemsPanel>

          <ListView.ItemTemplate>
               <DataTemplate>
                    <Button Mode=OneWay}"  
                            Click="Button_Click"/> 
                </DataTemplate>
           </ListView.ItemTemplate>
 </ListView>

Моя первоначальная идея была создать пользовательскую кнопку с ID и привязать индекс к ID, но я не могу понять, как это сделать.

Я пробовал:

int a = myListView.Items.IndexOf(((Button)sender)); 

внутри обработчика события, но он всегда возвращает 0xffffffffff.

5
задан Dave Clemmer 5 December 2011 в 23:27
поделиться