DataGridView checkbox column с привязкой к SQLite

223
04 ноября 2017, 11:57

Приветствую. Есть DataGridView, в которую загружаются данные из БД SQLite:

private void LoadDataFromDB()
    {
        m_dTable = new DataTable();
        String sqlQuery;
        if (m_dbConn.State != ConnectionState.Open)
        {
            MessageBox.Show("Соединение с БД не установлено");
            return;
        }
        try
        {
            sqlQuery = "SELECT id as №,  customer as Заказчик, product as Товар, has_technical_task as 'Тех. задание', " +
            " start_date as 'Дата начала', end_date as 'Дата завершения', is_done as Завершён, delay as Просрочка, cost as Стоимость FROM tasks WHERE is_done=0";
            m_sqlAdapter = new SQLiteDataAdapter(sqlQuery, m_dbConn);
            m_sqlAdapter.Fill(m_dTable);
            dataGrid.DataSource = m_dTable.DefaultView;
        }
        catch (SQLiteException ex)
        {
            MessageBox.Show("Ошибка: " + ex.Message);
        }
    }

Поля "Завершён" и "Тех. задание" в БД имеют тип INTEGER, но по сути являются bool-значениями. Так вот вопрос, есть ли какой-нибудь способ сделать так, что бы эти колонки (с индексами 3 и 6) имели тип DataGridViewCheckBoxColumn вместо обычного DataGridViewColumn?

Answer 1

Можно явно задать типы столбцов в DataTable:

m_dTable.Columns.Add("№", typeof(int));
m_dTable.Columns.Add("Заказчик", typeof(string));
m_dTable.Columns.Add("Завершён", typeof(bool));

Естественно, создайте все столбцы с правильными названиями в правильном порядке, совпадающем с sql-запросом.

READ ALSO
Перезапись элементов List

Перезапись элементов List

Доброго времени сутокИмеется следующий код генерации перестановок:

179
Пиксельная мозаика из картинки

Пиксельная мозаика из картинки

Всем привет! Помогите разобраться с реализацией в C# Необходимо сделать следующее: 1Загрузить картинку (любого размера) 2

197
XML-сериализация по особым правилам

XML-сериализация по особым правилам

Имеется электронный документооборотОбмен данными выполняется с помощью XML следующей структуры:

231
Ошибка при декодировании BitmapImage

Ошибка при декодировании BitmapImage

Кодирую BitmapImage (в формате gif) в массив байт, далее передаю этот массив байт по сети, массивы байтов при отправке и пришествию совпадают, далее...

414