Перейти к содержимому

Как заполнить datagridview c

  • автор:

Заполнить dataGridView

Создаем в определенной вкладке dataGridView, 5 на 5, теперь нужно внести массив int[,] array в этот gridView, пробовал конвертировать массив в 1 мерный, но данные через dataGridView.DataSource не отображаются.

Добавлено через 22 часа 28 минут
Даже когда происходит заполнение данными, ячейки пустые

94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Заполнить DataGridView из Excel
Добрый вечер, у меня такая проблема, хочу экспортировать данные из excel в привязанный datagrid.

Асинхронно заполнить DataGridView
есть richtextbox. с каждой строкой производится долгая функция, результат которой она вписывает в.

Как заполнить datagridview?
ListView я всегда заполнял с помощью и этого кода: private void button17_Click(object sender.

Заполнить datagridview из цикла
Здравствуйте! Как мне заполнить datagridview результатами цикла: for (int ip = min; ip <=.

557 / 534 / 225
Регистрация: 02.11.2016
Сообщений: 1,538
Можно, например, вот так:

1 2 3 4 5 6 7
for (int i = 0; i  5; i++) { for (int j = 0; j  5; j++) { dataGrid.Rows[i].Cells[j].Value = arr[i, j]; } }

Регистрация: 03.02.2017
Сообщений: 14
Так просто, а я пытался создавать DataTable-s но не получалось, спасибо, помогло!

Эксперт .NET

5869 / 4746 / 2940
Регистрация: 20.04.2015
Сообщений: 8,361

ЦитатаСообщение от Killiwar Посмотреть сообщение

а я пытался создавать DataTable

1 2 3 4 5 6
DataGridView dataGrid = new DataGridView(); dataGrid.Parent = someTabPage; dataGrid.Dock = DockStyle.Fill; //dataGrid.RowCount = 5; не нужно //dataGrid.ColumnCount = 5; не нужно dataGrid.DataSource = GetDataTable(array);

Метод GetDataTable:

1 2 3 4 5 6 7 8 9 10 11 12 13
DataTable GetDataTable(int[,] array) { DataTable table = new DataTable(); for (int i = 0; i  array.GetLength(1); i++) table.Columns.Add(); for (int i = 0; i  array.GetLength(0); i++) { table.Rows.Add(table.NewRow()); for (int j = 0; j  array.GetLength(1); j++) table.Rows[i][j] = array[i, j]; } return table; }

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Как заполнить массив из dataGridView?
Доброго времени суток! Пытаюсь реализовать ввод матрицы с помощью dataGridView. Нашел здесь на.

Ячейки DataGridView заполнить картинками
Хочу поле в таблице заполнить картинками. Пробую вот таким способ и что-то не особо получается.

Заполнить данными combobox в datagridview
Я новичок, не пинайте сильно. Заполняю данными dataGridView1 данными из таблицы Employees.

Заполнить DataGridView по аналогии с таблицей
DataGridView анология по примеру exсel, смысл какой, ввожу дату начала работ к примеру 01.01.15 и.

C# DataGridView Как заполнить целый столбец значениями

а как заполнить весь третий столбец значениями 123123123 ? Я знаю, что через цикл, но как это сделать? Опишите, пожалуйста.

Отслеживать
2,703 1 1 золотой знак 13 13 серебряных знаков 25 25 бронзовых знаков
задан 9 мая 2017 в 8:13
1 1 1 серебряный знак 1 1 бронзовый знак
Не совсем понятна суть вопроса — вы пишете, что знаете и тут же спрашиваете — как это сделать.
9 мая 2017 в 8:18

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

Если правильно понял о чем вопрос, то как-то так:

 for (int i=0;i

Отслеживать
ответ дан 9 мая 2017 в 8:41
Marchosias Marchosias
173 13 13 бронзовых знаков

Третий столбец это: dataGridView1.Rows[i].Cells[ 2 ].Value . Счет начинается с нуля.

Заполнить столбец можно так:

for (int i = 0; i
for (int i = 0; i

Отслеживать
ответ дан 9 мая 2017 в 22:15
2,703 1 1 золотой знак 13 13 серебряных знаков 25 25 бронзовых знаков

  • c#
  • winforms
  • datagridview
    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.10.27.43697

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Как заполнить datagridview c

DataGridView — стандартный GUI компонент для отображения и редактирования таблиц. Здесь коротко рассмотрены основные моменты работы с этим классом.

Перекиньте стандартным способом в форму компонент DataGridView.

DataGridView-adding.png

Источник данных при создании можно не указывать, так как DataGridView позволяет хранить данные внутри себя и добавлять/удалять их на лету, во время выполнения (runtime). После этого редактором свойств настройте поведение по умолчанию нового экземпляра DataGridView. Я обычно меняю свойства AllowUserToAddRows на false, AllowUserToDeleteRows на false, ReadOnly на true. Можно также переименовать экземпляр из dataGridView1 в что-нибудь более осмысленное, подходящее для Вашей программы.

Добавление строк и столбцов. Столбцы и строки можно добавлять во время выполнения программы (подробнее см. [1]). Пример добавления строк:

dataGridView1->Rows->Add();

Однако если назначение и структура таблицы (количество и наименование столбцов) известны заранее, то можно редактором свойств добавить столбцы. Для этого редактируют свойство Columns.

DataGridView-edit-columns.png

Стиль текста заголовка. Пример, как можно установить жирный шрифт в заголовке таблицы:

DataGridView dgv = 0 == tabControl1.SelectedIndex ? ОсновнойDGV : РезервDGV; DataGridViewCellStyle style = dgv.ColumnHeadersDefaultCellStyle; style.Font = new Font(style.Font, FontStyle.Bold); // Жирный текст 

Как поменять цвет фона заголовка и цвет шрифта:

dgv.EnableHeadersVisualStyles = false; dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Navy; dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White;

Работа с ячейками. Обращение к ячейкам DataGridView довольно простое. Индексация столбцов (Columns) и строк (Rows) идет относительно нуля. Столбец с индексом 0 самый левый, и строка с индексом 0 самая верхняя. Количество строк можно получить через свойство RowCount. Добавляются строки методом Удаляются строки методом Rows->Add(), удаляются методом Rows->RemoveAt(номер строки). Пример добавления и удаления строк:

// Добавим в dataGridView1 4 строки: dataGridView1->Rows->Add(); dataGridView1->Rows->Add(); dataGridView1->Rows->Add(); dataGridView1->Rows->Add();

// Удалим все строки из dataGridView1:
while (0 != dataGridView1->RowCount) dataGridView1->Rows->RemoveAt(0);

Более простой способ удаления строк:

dataGridView1->Rows->Clear();

Текущая строка. Узнать номер текущей строки можно через HitTestInfo->RowIndex:

int idx = dataGridView1->HitTestInfo->RowIndex;

Установить (поменять) текущую строку можно через свойство CurrentCell (в примере устанавливаем третью текущую строку):

int idx = 2; dataGridView1->CurrentCell = dataGridView1->Rows[idx]->Cells[0];

Текущая строка помечена в таблице треугольничком:

DataGridView-current-row.png

// Необязательный шаг: отмена выделения текущей ячейки,
// чтобы она не подкрашивалась: dataGridView1->CurrentCell->Selected = false;

Вид таблицы после отмены выделения текущей ячейки:

DataGridView current cell remove selection

Изменение данных в ячейках. Менять данные в ячейках таблицы можно только тогда, когда существуют соответствующий столбец и соответствующая строка, иначе произойдет ошибка выполнения («System.ArgumentOutOfRangeException» произошло в mscorlib.dll Дополнительные сведения: Индекс за пределами диапазона. Индекс должен быть положительным числом, a его размер не должен превышать размер коллекции.). После добавления строки методом Add все значения в ячейках добавленной строки будут пустые. К ячейке таблицы можно обращаться по номеру столбца и номеру строки через свойство Value.

Пример добавления строк и заполнения таблицы:

int i = 0; //нумерация строк начинается с 0
if ( (dataGridView1->RowCount - 1)  i ) dataGridView1->Rows->Add();
// № строки добавляем в первый столбец Cells[0]: dataGridView1->Rows[i]->Cells[0]->Value = (i+1).ToString();
// Текст добавим во второй столбец Cells[1]: dataGridView1->Rows[i]->Cells[1]->Value = "Текст в ячейке";
i++; //переходим к следующей строке dataGridView1->Rows[i]->Cells[0]->Value = (i+1).ToString(); .

Стиль, цвет текста. Внешний вид текста в ячейке можно менять через свойство Style. Пример изменения цвета нужной ячейки на C#:

private void msgtable(string msg, Color textcolor) < dataGridView1.Rows[rowidx].Cells[2].Style.ForeColor = textcolor; dataGridView1.Rows[rowidx].Cells[2].Value = msg; >
case TCalibReport.ITERATE_OK: msgtable("OK", Color.Green); break; .

dataGridView Cells Style ForeColor

Пример изменения шрифта ячейки на жирный:

Font font = new Font(DataGridView.DefaultFont, FontStyle.Bold); dgv.Rows[ТекущаяСтрока].Cells[ТекущийСтолбец].Style.Font = font;

Как обращаться к столбцам не по их индексу, а по имени? Нумерация строк и столбцов начинается с нуля, и когда нам нужно обратиться к конкретной ячейке строки, то это можно сделать через числовой индекс: Rows[индексстроки].Cells[индексстолбца]. Однако есть удобная возможность получить индекс столбца по имени типа столбца:

dgv.Rows[ТекущаяСтрока].Cells[УровеньУст.Index].Value = Установлено.ToString("F2", ci); dgv.Rows[ТекущаяСтрока].Cells[УровеньСчит.Index].Value = Считано.ToString("F2", ci);

В этом примере УровеньУст и УровеньСчит — типы столбцов, которые были установлены во время компиляции визуальным редактированием свойства Columns таблицы dgv. Используется свойство Index этих типов.

DataGridView Column Name

Клик на заголовке строки. Обработка клика на заголовке строки на C#:

private void dataGridView1_RowHeaderMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)

Как удалить последнюю пустую строку?

DataGridView last empty row

Ответ: после манипуляции со строками и добавления новых строк установите в false свойство AllowUserToAddRows :

dataGridView1.AllowUserToAddRows = false;

1. Все о DataGridView. Учебник site:datagridview.narod.ru.
2. C#: экспорт/импорт DataGridView в XML и HTML.

Как заполнить datagrid данными из базы данных в имеющиеся столбцы?

5ce8f7efa7cfb860782855.png

добавлять удобнее в редактировании столбцов через студию, и добавьте при загрузке формы код:
InventDataGrid.AutoGenerateColumns = false;
этот не позволит создавать лишние столбцы которые не надо показывать.

Ответ написан более трёх лет назад

Комментировать

Нравится Комментировать

Ответы на вопрос 0

Ваш ответ на вопрос

Войдите, чтобы написать ответ

c#

  • C#
  • +1 ещё

Можно ли просто передать exe или передать папку Release wiforms c#?

  • 1 подписчик
  • 4 часа назад
  • 44 просмотра

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *