我想解决一个看似简单的任务。我想创建一个文本条目列表,其中每个条目都是可选的(并导致导航到另一个页面),并且当用户将手指放在一个项目上时,我想要一个带有单个选项的上下文菜单来删除该项目。这是 WP 应用程序中非常常见的模式。例如,浏览器使用收藏夹执行此操作。
现在我在项目模板中有一个带有文本块的列表框,我在 SelectionChanged 事件中开始导航:
<ListBox Name="lbSnippets" SelectionChanged="lbSnippets_SelectionChanged">
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}"></TextBlock>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ListBox>
我可以想出几种方法来解决保持问题,但没有一种方法适合我。例如,我可以处理 TextBlock 上的 Hold 事件,但随后我将不得不挖掘与此 TextBlock 相关的项目。有些东西告诉我应该有更好的方法来做到这一点,因为它很常见。解决此任务的正确方法是什么?