Я вообще не могу это исправить. Следующие два метода лишают методы что-то в моем проекте, которые я использую для отладки проблемы.Способ добавления нескольких элементов в ListView, а не один.
У меня есть текстовое поле управления XAML, действующее как поле поиска, и этот метод предназначен для прослушивания, когда пользователь нажимает клавишу возврата для отправки поиска. Когда нажата клавиша возврата, элемент должен быть добавлен в элемент управления ListView, который у меня есть на моей странице.
Ниже приведены две версии метода, первый из которых прослушивает специально для ключа возврата, однако это приводит к ошибке, когда по поисковому термину добавляется TWICE в ListView.
// Adds two items to ListView
public void OnSearchKeyPressDown(object sender, KeyRoutedEventArgs e)
{
ListView termsList = termsListContainer;
if (e.Key == Windows.System.VirtualKey.Enter)
{
termsList.Items.Add(searchTerm.Text);
}
}
Нижеприведенная версия - это тест, который прослушивает любой ключ. Это работает правильно и добавляет только один элемент в ListView.
//Adds only one item to ListView
public void OnSearchKeyPressDown(object sender, KeyRoutedEventArgs e)
{
ListView termsList = termsListContainer;
termsList.Items.Add(searchTerm.Text);
}
Я не могу за жизнь моей фигуры из того, что в первом способе дублирует элементы добавляются - может кто-то пожалуйста, помогите мне, я уверен, что это будет просто, и я с видом очевидным вещь.
Cheers.
Просто, чтобы добавить дополнительные разъяснения, если изменить ключ, метод прослушивающему к чему-то еще, как «а» он добавляет только один элемент ListView, поэтому это связано с прослушиванием клавиши Enter. – James
Сколько раз первая функция вызывалась при нажатии кнопки ввода? (поставьте в нем точку останова и посмотрите, сколько раз он попал, или добавьте оператор регистрации). – Gjeltema
Спасибо за ваш комментарий, я на самом деле просто добавил ответ, который я нашел в другом месте - не уверен, что это то, что я когда-либо нашел бы сам! Также не уверен, что я должен ответить на свой вопрос: -s – James