Sqlite, DataGridViews и списки привязок - PullRequest
0 голосов
/ 25 мая 2020

Мне удалось успешно создать, развернуть, прочитать и записать в базу данных 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();
        }

Я чувствую, что мне не хватает чего-то глупого. Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...