Я потратил много времени, пытаясь понять и реализовать что-то, что выглядит легко.
В моем приложении WP7 у меня есть кнопка, которая отображает контекстное меню после долгого нажатия.Поскольку это контекстное меню привязано к списку, количество пунктов может быть огромным.До сих пор мне не удавалось добавить просмотрщик прокрутки вокруг моего шаблона данных.Но я проверил, что если шаблона данных там не было, он должен работать нормально.
Вот мой XAML:
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu ItemsSource="{Binding}">
<toolkit:ContextMenu.ItemTemplate>
<DataTemplate >
<toolkit:MenuItem Header="{Binding Path=Name}" Click="MenuItem_Click"/>
</DataTemplate>
</toolkit:ContextMenu.ItemTemplate>
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
Я пытался добавить ScrollViewer почти везде (перед тегом: <toolkit:ContextMenuService.ContextMenu>
, перед тегом <toolkit:ContextMenu ItemsSource="{Binding}">
, ...), но ничего не работает
Я также пытался использовать в своем теге присоединенное свойство:
<toolkit:ContextMenu ItemsSource="{Binding}" ScrollViewer.VerticalScrollBarVisibility="Visible">
, но это не таклибо не работает.
Но если я не использую такой шаблон данных, как:
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu>
<ScrollViewer>
<stackPanel>
<toolkit:MenuItem Header="Item1"/>
<toolkit:MenuItem Header="Item2"/>
<toolkit:MenuItem Header="Item3"/>
<toolkit:MenuItem Header="Item4"/>
</stackPanel>
</ScrollViewer>
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
, он работает нормально.
Я что-то пропустил?