Связать контекстное меню с каждым элементом списка, привязанным к коллекции объектов - Windows Phone 7 - PullRequest
2 голосов
/ 19 декабря 2011

У меня есть коллекция объектов, которые я хочу отобразить в виде списка. Итак, я связываю ListBox с этой коллекцией. Все предметы в коллекции отображаются в виде списка. Следующее, что я хочу сделать, это связать ContextMenu с каждым элементом в списке. (Контекстное меню в основном будет содержать элемент меню «удалить», который, очевидно, удалит соответствующий элемент.) Поскольку я не делаю явных ListBoxItem s, я не могу понять, как связать с ними контекстное меню.

Примечание: я должен связать ListBox с коллекцией предметов, потому что я хочу, чтобы ListBox обновлялся автоматически при удалении элемента из коллекции.

Заранее спасибо.

1 Ответ

2 голосов
/ 19 декабря 2011

Вы можете поместить ContextMenu в соответствующий элемент, используя DataTemplate:

<ListBox>
     <ListBox.ItemTemplate>
          <DataTemplate>
             <ListBoxItem>
                  <TextBlock Text={Binding} > <!-- use the control you need, with the correct binding -->
                        <toolkit:ContextMenuService.ContextMenu>
                                            <toolkit:ContextMenu>
                                                <toolkit:MenuItem Header="Delete item" Click="DeleteItem_Click" />
                                            </toolkit:ContextMenu>
                                        </toolkit:ContextMenuService.ContextMenu>
                  </TextBlock>
             </ListBoxItem>
          </DataTemplate>
     </ListBox.ItemTemplate>
 </ListBox>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...