Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
2 / 2 / 0
Регистрация: 26.10.2015
Сообщений: 104

Заполнение datagridview

26.01.2016, 10:19. Показов 2563. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть 2 формы. Одна форма с datafridview, вторая с textbox'ами для заполнения таблицы. Проблема заключается в том, что при попытке нажатия на кнопку на второй форме вылетает с ошибкой: "Строки нельзя программным способом добавить в коллекцию строк DataGridView, если элемент управления привязан к данным."

Form 1 код:
C#
1
2
3
4
public void insert_data(string[] str)
        {
            dataGridView1.Rows.Add(str[0], str[1], str[2], str[3], str[4], str[5], str[6], str[7]);//Тут ошибка
        }
Form 2 код:
C#
1
2
3
4
5
6
 private void button1_Click(object sender, EventArgs e)
        {
            Form1 f1 = new Form1();
            string[] str = { textBox1.Text, textBox2.Text, textBox3.Text, textBox4.Text, textBox5.Text, textBox6.Text, textBox7.Text, textBox8.Text };
            f1.insert_data(str);
        }
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.01.2016, 10:19
Ответы с готовыми решениями:

Заполнение DataGridView
У меня есть 2 таблицы.В одной 5 колонок,а в другой 6.По нажатию кнопки в первой таблице заполняются все столбцы,в другой 4 столбца. По...

Заполнение dataGridView
Как начать заполнение dataGridView со второй ячейки? К примеру есть две ячейки H и K H | Заполнение начинается со второй ячейки первой...

Заполнение dataGridView
У меня есть главная форма на которой находится dataGridView и кнопка которая открывает вторую форму. На второй форме есть 5 textBox`сов и...

14
 Аватар для Sanya_sa
912 / 816 / 333
Регистрация: 03.02.2015
Сообщений: 5,276
Записей в блоге: 9
26.01.2016, 12:03
Цитата Сообщение от Nakato Посмотреть сообщение
"Строки нельзя программным способом добавить в коллекцию строк DataGridView, если элемент управления привязан к данным."
Правильно. Ваша датаГрид привязана к БД скорее всего, поэтому редактируйте записи в БД и они отобразятся уже в датаГрид Вашем.
Вот почитайте все написано и примерчики естьhttps://msdn.microsoft.com/ru-... .110).aspx
когда прочтете если не понятно будет - спрашивайте.
1
2 / 2 / 0
Регистрация: 26.10.2015
Сообщений: 104
26.01.2016, 12:35  [ТС]
Вопрос тогда по поводу сохранения, пробую через update. Резуьтат - ничего! Абсолютно ничего, закрываю приложение, открываю снова БД пуста!
0
 Аватар для Sanya_sa
912 / 816 / 333
Регистрация: 03.02.2015
Сообщений: 5,276
Записей в блоге: 9
26.01.2016, 12:41
А потом Fill вызываете? Что бы данные из БД отобразить в Вашем датаГрид.

C#
1
2
3
4
....
this.configSystemTableAdapter.Update(this.dBPowerPlanLabDataSet.ConfigSystem);
this.configSystemTableAdapter.Fill(this.dBPowerPlanLabDataSet.ConfigSystem);
.....
1
2 / 2 / 0
Регистрация: 26.10.2015
Сообщений: 104
26.01.2016, 12:53  [ТС]
Не работает, он не заносит значения в БД и поэтому видимо не отображает.
0
160 / 148 / 92
Регистрация: 30.03.2011
Сообщений: 569
26.01.2016, 13:32
Вероятнее всего DataSourse у datafridview - DataTable либо одна из DataTable, входящих в DataSet, которая в свою очередь м.б. связана с БД. Поэтому программное обновление нужно делать в DataTable.
0
2 / 2 / 0
Регистрация: 26.10.2015
Сообщений: 104
26.01.2016, 14:03  [ТС]
Каким образом это сделать?
0
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
26.01.2016, 14:10
Nakato,
Видите, здесь собрались участники битвы экстрасенсов :
Цитата Сообщение от Sanya_sa Посмотреть сообщение
Ваша датаГрид привязана к БД скорее всего
Цитата Сообщение от Sanya_sa Посмотреть сообщение
А потом Fill вызываете?
Цитата Сообщение от MVK Посмотреть сообщение
Вероятнее всего DataSourse у datafridview - DataTable либо одна из DataTable
Но и они не в силах помочь, пока вы не расскажете как датагрид связан с БД. Если не получается словами, можете показать код.
0
2 / 2 / 0
Регистрация: 26.10.2015
Сообщений: 104
26.01.2016, 14:15  [ТС]
C#
1
2
3
4
5
6
7
8
9
 // dekanatBindingSource
            // 
            this.dekanatBindingSource.DataMember = "Dekanat";
            this.dekanatBindingSource.DataSource = this.dekanatDataSet;
            // 
            // dekanatDataSet
            // 
            this.dekanatDataSet.DataSetName = "DekanatDataSet";
            this.dekanatDataSet.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
Это то что нужно?
0
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
26.01.2016, 14:32
Nakato,
теперь расскажите, как добавляете записи в таблицу БД
0
2 / 2 / 0
Регистрация: 26.10.2015
Сообщений: 104
26.01.2016, 14:45  [ТС]
Ну через ввод обычным способом... В самой datagridview
0
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
26.01.2016, 15:07
Nakato,
Тоже немного повангую.
DGV заполняется так?
C#
1
this.dekanatTableAdapter.Fill(this.dekanatDataSet.Dekanat);
Если угадал, то в обработчик кнопки "Сохранить" поместите:
C#
1
this.dekanatTableAdapter.Update(this.dekanatDataSet.Dekanat);
0
2 / 2 / 0
Регистрация: 26.10.2015
Сообщений: 104
26.01.2016, 15:32  [ТС]
Он не сохраняет таким способом, показывает что якобы сохранил, но при перезапуске приложения таблица снова обнуляется
0
160 / 148 / 92
Регистрация: 30.03.2011
Сообщений: 569
26.01.2016, 16:09
Как я вижу код не твой, но сделан по-уму, как в "святцах".
Обновлять из формы 2 нужно в соответствующей DataTable или в нескольких DataTable в зависимости от построения формы, а изменения в DGV и БД будет сделано автоматически.
Дашь больше кода, больше будет помощи.
0
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
26.01.2016, 16:35
Цитата Сообщение от Nakato Посмотреть сообщение
показывает что якобы сохранил, но при перезапуске приложения таблица снова обнуляется
Ясно вижу. Есть, есть база данных, которая обновляется методом Update, но при перезапуске приложения меняется на пустую.
Еще вижу, но не так ясно, что когда добавляли источник данных, согласились перенести базу в папку с программой и изменить при этом строку подключения. Зря.
Но зато сейчас есть аж 3 базы данных. Одна там, где была изначально создана. Вторая в папке проекта, а третья в папке Debug или Release. И вот как-раз в ней данные и изменяются методом Update. Но всё тщетно. Ибо при запуске программы она заменяется базой номер два.
Кстати. Посмотреть сколько записей обновлено можно так:
C#
1
2
int count = this.dekanatTableAdapter.Update(this.dekanatDataSet.Dekanat);
MessageBox.Show("Изменено записей: " + count.ToString());
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.01.2016, 16:35
Помогаю со студенческими работами здесь

DataGridView Заполнение
Помогите решить вопрос. Вообщем у меня такая проблема есть программа при ее запуске в datagridview выводятся цифры за место слов как...

Заполнение dataGridView
Есть dataGridView состоит из 3 столбцов, необходимо заполнить рандомными значениями, кол-во которых задается из textBox ...

Заполнение DataGridView
Помогите плиз. Есть таблица в datagridView, так же есть несколько комбобоксов, мне нужно заполнить каждый столбец, из комбобокса, допустим...

Заполнение dataGridView
Подскажите пожалуйста,как заполнить dataGridView У меня есть код private void bolshe(double x1, double x2) { ...

Заполнение dataGridView
у меня на форме добавлена dataGridView, как из класса заполнить, а то не заполняется ?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru