С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/25: Рейтинг темы: голосов - 25, средняя оценка - 4.72
0 / 0 / 0
Регистрация: 22.11.2016
Сообщений: 57

Заполнение dataGridView

01.06.2018, 16:40. Показов 4778. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня есть главная форма на которой находится dataGridView и кнопка которая открывает вторую форму. На второй форме есть 5 textBox`сов и кнопка "добавить". Мне нужно чтобы все данные что вводятся в textBox выводилась в dataGridView на главной форме при нажатии кнопки "добавить".
Вот код кнопки "добавить" на второй форме.
C#
1
2
3
4
5
6
7
8
9
10
11
12
 private void button1_Click(object sender, EventArgs e)
        {
            Form1 form1 = new Form1();
            form1.dataGridView1.RowCount = form1.dataGridView1.RowCount + 1;
            int n = form1.dataGridView1.RowCount;
            form1.dataGridView1.Rows[n-1].Cells[0].Value = textBox1.Text;
            form1.dataGridView1.Rows[n-1].Cells[1].Value = textBox2.Text;
            form1.dataGridView1.Rows[n-1].Cells[2].Value = textBox3.Text;
            form1.dataGridView1.Rows[n-1].Cells[3].Value = textBox4.Text;
            form1.dataGridView1.Rows[n-1].Cells[4].Value = textBox5.Text;
            this.Hide();
        }
Но dataGridView почему то не заполняется. Помогите пожалуйста!

Заполняется только после
C#
1
form1.show();
Но оно открывает еще раз главную форму. И получается открыты две главных формы.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.06.2018, 16:40
Ответы с готовыми решениями:

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

Заполнение DataGridView
Здравствуйте, можете помочь реализовать вот такую операцию Есть дата рождения например 11.08.1996 Порядок вычисления Дата народження...

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

9
 Аватар для aleksskay4
71 / 68 / 46
Регистрация: 02.12.2015
Сообщений: 891
Записей в блоге: 1
01.06.2018, 18:03
Цитата Сообщение от Galikarnas Посмотреть сообщение
И получается открыты две главных формы
И которая из двух главных главнее?)
0
0 / 0 / 0
Регистрация: 22.11.2016
Сообщений: 57
01.06.2018, 18:14  [ТС]
aleksskay4, та что была открыта при запуске программы.
0
 Аватар для aleksskay4
71 / 68 / 46
Регистрация: 02.12.2015
Сообщений: 891
Записей в блоге: 1
01.06.2018, 18:21
Цитата Сообщение от Galikarnas Посмотреть сообщение
Form1 form1 = new Form1();
Это уже другая форма, не главная.

Добавлено через 39 секунд
Вам нужна обратиться к уже созданной форме, заново создавать не нужно.

Добавлено через 54 секунды
Через конструктор формы передайте значения текстбоксов.
1
228 / 165 / 110
Регистрация: 09.11.2015
Сообщений: 454
01.06.2018, 18:47
Galikarnas, почитайте Ответы на 7 самых частых вопроса по WinForms
0
548 / 479 / 315
Регистрация: 24.09.2013
Сообщений: 3,345
Записей в блоге: 1
01.06.2018, 20:17
Лучший ответ Сообщение было отмечено Galikarnas как решение

Решение

Могу предложить работающий код, который будет намного проще
1. Приведенный код не будет работать из-за множства ошибок
2 Мой код:
2.1 Кнопкой первой формы открываем вторую
2.2 В форме 2 заполняем текстбокы
2.3 Кнопкой этой формы открываем первую, где уже будет заполненный датагрид

Добавлено через 1 час 5 минут
Предварительно: Для датагрида найдите свойство Modifiers, которое установлено в Private и его нужно заменить на Public
Это все.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Forms Code
{  
         // Код формы1
         private void Form1_Load(object sender, EventArgs e)
        {
            dataGridView1.RowCount = 5;
            dataGridView1.ColumnCount = 6;   //Можно менять по усмотрению
        }
        private void button1_Click(object sender, EventArgs e)
        {
          Form2 f2 = new Form2();
           f2.Show();
            this.Hide();
         }
          ////////////////// Конец кода 
          // Код формы2
             textBox1.Text = "AAAAA";
              textBox2.Text = "BBBBBB";
               textBox3.Text = "CCCCC";
                textBox4.Text = "DDDDDD";
                 textBox5.Text = "EEEEE";
                  private void button1_Click(object sender, EventArgs e)
                  {
                    Form1 f1 = new Form1();
                     f1.dataGrid[0,0].Value = textBox1.Text;
                      f1.dataGrid[1,0].Value = textBox2.Text;
                       f1.dataGrid[2,0].Value = textBox3.Text;
                        f1.dataGrid[3,0].Value = textBox4.Text;
                         f1.dataGrid[4,0].Value = textBox5.Text;
                           f1.Show();
                            this.Hide();
                   }  
            ////////////////// Конец кода 
         }
}
1
0 / 0 / 0
Регистрация: 22.11.2016
Сообщений: 57
01.06.2018, 20:19  [ТС]
zna926, Спасибо))
0
548 / 479 / 315
Регистрация: 24.09.2013
Сообщений: 3,345
Записей в блоге: 1
01.06.2018, 23:42
К сожалению, обнарижил ошибки в коде. Посылаю новый, все работает
Предварительно: Для датагрида найдите свойство Modifiers, которое установлено в Private и его нужно заменить на Public

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Forms Code
{  
      // Код формы1
        private void button1_Click(object sender, EventArgs e)  // Открываем форму2
        {
           Form2 f2 = new Form2();
            f2.Show();
             this.Hide();
         }
        // Конец кода  
      ////////////////////////////////
      // Код формы2
        private void button1_Click(object sender, EventArgs e) //Передача данных в датагрид формы1
        {
           Form1 f1 = new Form1();
            f1.dataGridView1.RowCount = 5;
             f1.dataGridView1.ColumnCount = 4;
              f1.dataGridView1.Rows[4].Cells[0].Value = textBox1.Text;
               f1.dataGridView1.Rows[4].Cells[1].Value = textBox2.Text; 
                f1.dataGridView1.Rows[4].Cells[2].Value = textBox3.Text;
                 f1.dataGridView1.Rows[4].Cells[3].Value = textBox4.Text;
                  f1.dataGridView1.Rows[4].Cells[4].Value = textBox5.Text;
                   f1.Show();
                    this.Hide();
         }
        // Конец кода  
 
}
0
0 / 0 / 0
Регистрация: 22.11.2016
Сообщений: 57
02.06.2018, 16:02  [ТС]
После того как я ввел значение в датагрид я хочу еще раз ввести, но тогда предыдущее значение удаляется. Как сделать чтобы оно не удалялось, а вводилось ниже предыдущего?
0
548 / 479 / 315
Регистрация: 24.09.2013
Сообщений: 3,345
Записей в блоге: 1
02.06.2018, 18:54
Думаю, это можно выполнить.
Уточняю условие:
1. Сколько строк нужно добавлять?
2. Сколько раз нужно добавлять?
3. А для чего это делается?
4. А может с Вашей стороны нужно упростить условия?

Добавлено через 9 минут
Кстати, в строке 17 кода, где dataGridView1.ColumnCount =4, установите 6, вместо 4
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.06.2018, 18:54
Помогаю со студенческими работами здесь

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

Заполнение dataGridView
для тренировки заполнил таблицу dataGridView значениями double newton=79; double move=3.6; а на самом деле надо заполнить таблицу...

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

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

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


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru