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

Получить данные из всех ячеек в DataGridView

13.10.2010, 22:17. Показов 40155. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
доброе время суток!
помогите, пожалуйста, решить проблему:имеется таблица datagridview не связанная с базой данных, и состоящая из двух столбцов, в которые вручную вводятся данные. как получить данные из всех ячеек (или по очереди из каждого столбца) и передать их в два одномерных массива, каждый из которых соответствует столбцу таблицы?
заранее благодарен за ответы.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.10.2010, 22:17
Ответы с готовыми решениями:

Получить значение всех ячеек строки dataGridView
Всем привет. У меня такая проблема - имеется таблица (dgv), в ней информация о пациентах, я выделяю одну из ячеек, и мне необходимо...

Получить данные из всех ячеек DataGrid
Здравствуйте. Из *.xlsx загружается таблица в DataGrid. Таблица случайного размера, содержит 0 и 1. Возникло несколько вопросов: Как...

Получить значение разниц с ячеек dataGridView
Как получить разницу с ячеек одного столбца dataGridView и записать их во второй? Есть два столбца но всю информацию вводим только в...

14
Автор FAQ
Автор FAQ
 Аватар для Rockedit
1803 / 615 / 37
Регистрация: 22.12.2009
Сообщений: 1,544
13.10.2010, 22:39
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

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
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace WindowsFormsApplication2
{
    public partial class Form1 : Form
    {
        string[] a;
        string[] b;
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
           a = new string[dataGridView1.RowCount];
           b = new string[dataGridView1.RowCount];
           for (int i = 0; i < dataGridView1.RowCount; i++)
          {
              a[i] = dataGridView1[0, i].Value.ToString();
              b[i] = dataGridView1[1, i].Value.ToString();
              MessageBox.Show(string.Format(a[i] + " " + b[i]));
 
           }
 
        }
    }
}
4
3 / 3 / 0
Регистрация: 30.03.2010
Сообщений: 71
13.10.2010, 22:55  [ТС]
спасибо Rockedit - заработало!
0
Автор FAQ
Автор FAQ
 Аватар для Rockedit
1803 / 615 / 37
Регистрация: 22.12.2009
Сообщений: 1,544
13.10.2010, 22:59
пожалуйста)
0
3 / 3 / 0
Регистрация: 30.03.2010
Сообщений: 71
13.10.2010, 23:22  [ТС]
кстати, я немного изменил код для того чтобы не считывалась последняя пустая строка из таблицы которая создается при вводе данных:
C#
1
2
3
4
5
6
7
for (int i = 0; i < dataGridView1.RowCount-1; i++)
          {
              a[i] = dataGridView1[0, i].Value.ToString();
              b[i] = dataGridView1[1, i].Value.ToString();
              MessageBox.Show(string.Format(a[i] + " " + b[i]));
 
           }
0
Автор FAQ
Автор FAQ
 Аватар для Rockedit
1803 / 615 / 37
Регистрация: 22.12.2009
Сообщений: 1,544
13.10.2010, 23:25
Да, есть такое дело) но эта не такая проблема, поэтому я и не писал. Помоему просто есть случаии, когда этой строки нет.
0
3 / 3 / 0
Регистрация: 30.03.2010
Сообщений: 71
13.10.2010, 23:30  [ТС]
да, это в принципе не проблема.
я пока не знаю как сделать чтобы пустая строка не создавалась, так что придется выкручиваться таким вот способом
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
14.10.2010, 12:15
Цитата Сообщение от naguale Посмотреть сообщение
я пока не знаю как сделать чтобы пустая строка не создавалась
C#
1
dataGridView1.AllowUserToAddRows = false;
4
3 / 3 / 0
Регистрация: 30.03.2010
Сообщений: 71
14.10.2010, 19:03  [ТС]
nio, у меня почему-то ничего не происходит если просто написать данную строку в программу, но если в свойствах datagridview1 указать AllowUsertoAddRows=false, то в автоматическом режиме строки уже не добавляются, т.е. нужно создавать кнопку для добавления строк.
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
15.10.2010, 08:30
Цитата Сообщение от naguale Посмотреть сообщение
у меня почему-то ничего не происходит если просто написать данную строку в программу
а ты напиши ее в конструктор или свойство Form_Load. Если нужно чтоб никогда не было, то при проектировании просто в панели свойств выключаешь


Цитата Сообщение от naguale Посмотреть сообщение
в автоматическом режиме строки уже не добавляются, т.е. нужно создавать кнопку для добавления строк
Конечно, в автоматическом режиме у тебя все время висит пустая строка, как только ты ее заполняешь, добавляется новая пустая строка. Если ты от нее отказываешься, то и добавлять тебе по сути нечего
0
3 / 3 / 0
Регистрация: 30.03.2010
Сообщений: 71
15.10.2010, 20:27  [ТС]
действительно, если дописать этот код в событие Form.Load то строки не добавляются. создал 2 кнопки для добавления и удаления строк. вопрос:а я правильно написал коды для кнопок?

C#
1
2
3
4
5
6
7
8
9
10
11
//это добавление
private void button3_Click(object sender, EventArgs e)
        {
            dataGridView1.Rows.Add();
        }
//это удаление
        private void button4_Click(object sender, EventArgs e)
        {
            int i=dataGridView1.CurrentRow.Index;
            dataGridView1.Rows.RemoveAt(i);
        }
вроде бы работает - строки добавляются и удаляются, а в принципе так можно делать?
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
15.10.2010, 20:50
Цитата Сообщение от naguale Посмотреть сообщение
вроде бы работает - строки добавляются и удаляются, а в принципе так можно делать?
работает - значит можно
Только для удаления можно и так
C#
1
2
3
4
private void button4_Click(object sender, EventArgs e)
        {
            dataGridView1.Rows.RemoveAt(dataGridView1.CurrentRow.Index);
        }
Добавлено через 2 минуты
или так
C#
1
dataGridView1.Rows.Remove(dataGridView1.CurrentRow);
1
3 / 3 / 0
Регистрация: 30.03.2010
Сообщений: 71
15.10.2010, 21:04  [ТС]
спасибо, nio, так проще и красивее
0
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 31
09.08.2015, 22:41
Ребят, а как сделать вывод из всех ячеек в textbox?
используя этот код:
Кликните здесь для просмотра всего текста
Цитата Сообщение от Rockedit Посмотреть сообщение

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication2
{
public partial class Form1 : Form
{
string[] a;
string[] b;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
a = new string[dataGridView1.RowCount];
b = new string[dataGridView1.RowCount];
for (int i = 0; i < dataGridView1.RowCount-1; i++)
{
a[i] = dataGridView1[0, i].Value.ToString();
b[i] = dataGridView1[1, i].Value.ToString();
textBox1.Text = string.Format(a[i] + "," + b[i]);
}

выводиться только из последних записей таблицы грид.
Миниатюры
Получить данные из всех ячеек в DataGridView  
0
60 / 60 / 54
Регистрация: 19.02.2012
Сообщений: 262
09.08.2015, 23:57
MetallHead13,
нужно просто конкатенировать строку, а в начале очищать от предыдущих записей
C#
1
2
3
4
5
6
7
8
9
textBox1.Text = string.Empty;
            a = new string[dataGridView1.RowCount];
            b = new string[dataGridView1.RowCount];
            for (int i = 0; i < dataGridView1.RowCount - 1; i++)
            {
                a[i] = dataGridView1[0, i].Value.ToString();
                b[i] = dataGridView1[1, i].Value.ToString();
                textBox1.Text += string.Format(a[i] + "," + b[i]);
            }
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.08.2015, 23:57
Помогаю со студенческими работами здесь

DataGridView: Как считать/записать данные из ячеек в переменную?
Как считать(записать) данные из ячеек в переменную?

получить данные из ячеек БД
Собственно есть база MySQL в ней таблица в таблице данные .... Подключён к ней через SQLConnection,SimpleDataSet и DataSource (всё...

Получить данные из ячеек эксель
Появилась потребность вынуть данные из ячеек эксель файла. Проблема в том, что в папке может быть разное количество файлов эксель, и нужно...

NET CF 2.0 получить данные из ячеек выделенной сторки DataGrid
Помогите вытянуть данные из выделенной строки string selectString = &quot;Barcode = '4820020350987'&quot;; ...

Получить данные из acsess таблицы в datagridview
Никак не получается одно действие. В идеале на столбце datagridview ввожу значение и по нажатию кнопки должна отобразиться вся строка....


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru