Я потратил много времени, пытаясь понять и реализовать что-то, что выглядит легко.Использование ScrollViewer в ContextMenu.MenuItem DataTemplate
В моем приложении 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>
он работает отлично.
Я что-то пропустил?
Спасибо, это работает отлично .. – Refre
@Refre Рад, что смог помочь! Если это решит вашу проблему, отметьте ее как ответ, спасибо. – theChrisKent