Silverlight Toolkit имеет GestureListener, который позволяет обрабатывать Tap, DoubleTap и многие другие события.
К нему можно прикрепить любой элемент.Но независимо от того, использовать пользовательский обработчик нажатий, для чего предназначено событие SelectionChanged, это глупая идея.Вы должны уточнить, почему это «вызывает проблемы» для вас.
Обновление
Измените свой код так:
private void flightlist_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (flightlist.SelectedItem != null)
{
PhoneApplicationService.Current.State["Flight"] = flightlist.SelectedItem;
NavigationService.Navigate(new Uri("/FlightDetail", UriKind.Relative));
}
// reset the selected-index, so the user can click on it again, after returning.
flightlist.SelectedIndex = -1;
}