我使用mvvm模式创建了一个longlistselector。
我在不同的标题下创建了许多城市名称。
我想知道当用户选择或点按某个特定项目时如何导航到特定页面。
答案 0 :(得分:2)
您可以简单地为每个tap
上的ListBoxItem
事件(即包含grid
/ canvas
/之处)或{上的SelectionChanged
事件连接事件监听器列表本身的{1}}事件。
一个例子:
<ListBox:ItemTemplate>
<DataTemplate>
<Grid Tap="Tap_Handler">
// .. your text or whatever goes here
</Grid>
</DataTemplate>
</ListBox:ItemTemplate>
和代码隐藏魔法:
public void Tap_Handler(object sender, GestureEventArgs e)
{
var item = (sender as Grid).DataContext as City; // Given you have City objects in your list
NavigationService.Navigate(new Uri("/View/City.xaml?id=" + item.Id, UriKind.Relative);
}
应该是类似的东西,如果这不起作用。
答案 1 :(得分:1)
您可以从SelectionChanged
订阅LongListSelector
个活动。
longListSelector.SelectionChanged += new SelectionChangedEventHandler(longListSelector_SelectionChanged);