У меня есть LongListSelector, заполненный список, который содержит объекты из SQLite базы данных:Получение объекта базы данных из LongListSelector Пункт
protected override async void OnNavigatedTo(NavigationEventArgs e)
{
SQLiteAsyncConnection conn = new SQLiteAsyncConnection(DB_PATH);
var query = conn.Table<Prasanja>().Where(x => x.id == 3);
var result = await query.ToListAsync();
foreach (var item in result)
{
var query1 = conn.Table<Odgovori>()
.Where(y => y.Prasanja_id == item.id);
txtPrasanje.Text = item.Tekst;
var resultOdgovori = await query1.ToListAsync();
foreach (var itemOdgovor in resultOdgovori)
{
Lista.Add(itemOdgovor.Odgovor.ToString());
lstOdgovori.ItemsSource = Lista;
}
}
То, что я хочу, когда один из элементов LongListSelector сливают, что я получаю конкретный объект прослушивается, и иметь возможность использовать этот объект properties.Here мой код:
private void lstOdgovori_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
LongListSelector selector = sender as LongListSelector;
if (selector == null)
return;
Odgovori odg = selector.SelectedItem as Odgovori;
if (odg == null)
return;
if(odg.Tocno==null)
MessageBox.Show("Try again");
else MessageBox.Show("True!!!");
}
проблема здесь состоит в том, что мой объект КГДА из класса Odgovori возвращает null после выполнения этого кода. Как я могу это исправить?
первая проверка Чет значение присутствует в выбранном элементе, применяя точку останова на линии .. ** Odgovori КГД = селектор .SelectedItem как Odgovori; ** если thr - это значение, то проблема связана с несоответствием типа. – loop
Да, значение присутствует. Моя проблема в том, что объект ** odg ** из класса ** Odgovori ** возвращает null после выполнения этой строки. Как я могу правильно нарисовать объект SelectedItem как объект Odgovori? Odgovori - мой класс таблицы SQLite. –