Вывод массива в dataGridView - C#

Узнай цену своей работы

Формулировка задачи:

Ребята, помогите переделать программу. Мне нужно вывести двумерный массив в dataGridView. Добавление столбцов я сделал, а вот как заполнить ячейки двумерным массивом - не понимаю. Уже намудрил какого-то бреда.
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. namespace Лабораторная_работа__7
  11. {
  12. public partial class Form1 : Form
  13. {
  14. public static int n,m;
  15. public Form1()
  16. {
  17. InitializeComponent();
  18. }
  19. private void numericUpDown1_ValueChanged(object sender, EventArgs e)//столбцы
  20. {
  21. label2.Text = "";
  22. n = Convert.ToInt32(numericUpDown1.Value);
  23. dataGridView1.ColumnCount = n;
  24. dataGridView1.SetBounds(20, 140, 50 * n + n, 62);
  25. for (int i = 0; i < n; i++)
  26. {
  27. dataGridView1.Columns[i].Name = i.ToString();
  28. dataGridView1.Rows[0].Cells[i].Value = '0';
  29. }
  30. radioButton1.Checked = true;
  31. dataGridView1.ReadOnly = false;
  32. }
  33. private void Form1_Load(object sender, EventArgs e)
  34. {
  35. m = Convert.ToInt32(numericUpDown2.Value);
  36. n = Convert.ToInt32(numericUpDown1.Value);
  37. dataGridView1.RowCount = 10;
  38. dataGridView1.ColumnCount = n;
  39. dataGridView1.SetBounds(20, 140, 50 * n + n, 62*m+m);
  40. }
  41. private void radioButton2_Click(object sender, EventArgs e)
  42. {
  43. Random rnd = new Random(); //объявление рандома
  44. dataGridView1.ReadOnly = true;
  45. for (int i = 0; i < n; i++)
  46. {
  47. dataGridView1.Rows[0].Cells[i].Value = rnd.Next(-100, 100); //генерация случайных чисел
  48. }
  49. for (int i = 0; i < m; i++)
  50. {
  51. dataGridView1.Rows[0].Cells[i].Value = rnd.Next(-100, 100); //генерация случайных чисел
  52. }
  53. }
  54. private void radioButton1_Click(object sender, EventArgs e)
  55. {
  56. dataGridView1.ReadOnly = false;
  57. for (int i = 0; i < n; i++)//цикл заполнения массива
  58. {
  59. dataGridView1.Rows[0].Cells[i].Value = '0';
  60. }
  61. for (int i = 0; i < m; i++)//цикл заполнения массива
  62. {
  63. dataGridView1.Rows[0].Cells[i].Value = '0';
  64. }
  65. }
  66. private void numericUpDown2_ValueChanged(object sender, EventArgs e)//строки
  67. {
  68. label2.Text = "";
  69. m = Convert.ToInt32(numericUpDown2.Value);
  70. dataGridView1.RowCount = m;
  71. dataGridView1.SetBounds(20, 140, 50 * n + n, 62 * m+m);
  72. for (int i = 0; i < m; i++)
  73. {
  74. dataGridView1.Columns[i].Name = i.ToString();
  75. dataGridView1.Rows[0].Cells[i].Value = '0';
  76. }
  77. radioButton1.Checked = true;
  78. dataGridView1.ReadOnly = false;
  79. }
  80. private void button1_Click(object sender, EventArgs e)
  81. {
  82. }
  83. }
  84. }

Решение задачи: «Вывод массива в dataGridView»

textual
Листинг программы
  1. void PutArrayInDGV(int[,] array)
  2. {
  3.     int m = array.GetLength(0);
  4.     int n = array.GetLength(1);
  5.     dataGridView1.ColumnCount = n;
  6.     dataGridView1.RowCount = m;
  7.     for (int i = 0; i < m; i++)
  8.     {
  9.         for (int j = 0; j < n; j++)
  10.         {
  11.             dataGridView1.Rows[i].Cells[j].Value = array[i, j];
  12.         }
  13.     }
  14. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.909 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы