Мне удалось успешно создать, развернуть, прочитать и записать в базу данных SQLite. Теперь я хочу взять запрос (SELECT * FROM Device
) и вернуть результат в BindingList, чтобы иметь возможность использовать его в DataGridView. Я могу сделать это с помощью списка, но, поскольку это список, я не могу удалять строки в DGV. Попытка сделать это приводит к ошибке: «Строки нельзя удалить программно, если DataGridView не привязан к данным IBindingList, который поддерживает уведомление об изменении и разрешает удаление».
Хорошо, хорошо. Итак, как мне вернуть результат запроса в BindingList?
Вот код для помещения результатов запроса в список:
public static List<DeviceModel> LoadDevice()
{
using (IDbConnection cnn = new SQLiteConnection(LoadConnectionString()))
{
var output = cnn.Query<DeviceModel>("SELECT * FROM Device", new DynamicParameters());
return output.ToList();
}
}
А вот код для удаления item:
private void RemoveButton_Click(object sender, EventArgs e)
{
DeviceModel p = new DeviceModel();
SqliteDataAccess.RemoveDevice(p);
foreach (DataGridViewRow row in this.InventoryTable.SelectedRows)
{
InventoryTable.Rows.RemoveAt(InventoryTable.SelectedRows[0].Index);
}
InventoryTable.Refresh();
}
Я чувствую, что мне не хватает чего-то глупого. Спасибо!