3 / 7 / 5
Регистрация: 18.10.2014
Сообщений: 177
1

Как сделать чтобы количество столбцов и строк DataGridView задавалась через NumericUpDown?

18.04.2016, 22:59. Показов 7130. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как сделать чтобы количество столбцов и строк DataGridView задавалась через numericUpDown. Я выставляю количество строк 2 и столбцов 2, а он выдает 2 столбца и 4 строки. Как это исправить вообще не представляю.
Миниатюры
Как сделать чтобы количество столбцов и строк DataGridView задавалась через NumericUpDown?  
Вложения
Тип файла: rar Matrix.rar (110.9 Кб, 43 просмотров)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.04.2016, 22:59
Ответы с готовыми решениями:

Как сделать так,чтобы количество строк и столбцов массива можно было менять через меню?
как сделать так,чтобы количество строк (n) и столбцов(m) массива можно было менять через меню?...

Создание таблицы: как в DataGridView задать программно количество строк и столбцов
Вообщем есть такое задание. Разработка программного средства для работы с таблицами. При...

Как сделать, чтобы программа считала сумму строк, а не столбцов?
const nmax = 10; type a = Array of Integer; //сумма в столбце K function SumCol(Matr: a; n, k:...

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

2
0 / 0 / 1
Регистрация: 12.12.2013
Сообщений: 16
18.04.2016, 23:15 2
Лучший ответ Сообщение было отмечено _Chaffee как решение

Решение

Вот что ты ерундой страдаешь? Берешь массив и вуаля! Всё готово, вот тебе рабочий пример m и n - это твои столбцы и строки в datagrid, Текстбоксы замени на свои numeric.value. Такое чувство, что ты из КБИП - это конечно не в обиду, но я что-то похожее делал, кому-то из КБиПа
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
    private void button1_Click(object sender, EventArgs e)
        {
            int mas = 0;
            int khm = 1;
            int n = Convert.ToInt32(textBox1.Text);
            int m = Convert.ToInt32(textBox2.Text);
            dataGridView1.ColumnCount = n;
            dataGridView1.RowCount = m;
            int[,] arr = new int[n, m];
            Random random = new Random();
            for (int i = 0; i < n; i++)
                for (int j = 0; j < m; j++)
                {
                   dataGridView1[i,j].Value = random.Next(-10, 10);
                }
            for (int i = 0; i < n; i++)
                for (int j = 0; j < n; j++)
                {
                    mas += Convert.ToInt32(dataGridView1.Rows[i].Cells[j].Value);
                }
            for (int i = 0; i < n; i++)
                khm *= Convert.ToInt32(dataGridView1[i, i].Value);
            richTextBox2.Text = Convert.ToString(khm);
        }
0
Эксперт .NET
5864 / 4741 / 2940
Регистрация: 20.04.2015
Сообщений: 8,361
18.04.2016, 23:24 3
_Chaffee,
разделите циклы:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
private void numericUpDown1_ValueChanged(object sender, EventArgs e)
{
    dataGridView1.Columns.Clear(); //удаляем ранее созданные столбцы
    f = (int)numericUpDown1.Value; //размер матрицы
    d = (int)numericUpDown2.Value;
    matrix = new double[d, f]; //создаем матрицу
    for (int i = 0; i < f; i++)
    {
        dataGridView1.Columns.Add("" + i, "" + i); //добавляем столбцы
    }
    for (int j = 0; j < d; j++)
    {
        dataGridView1.Rows.Add();//добавляем строки
    }
}
И к этому же обработчику подключите ValueChanged 2-го NumericUpDown, чтобы была реакция на изменение и его значения

Это я не подумавши насоветовал. Действительно можно ведь:
C#
1
2
3
4
5
6
7
8
9
private void numericUpDown1_ValueChanged(object sender, EventArgs e)
{
    dataGridView1.Columns.Clear(); //удаляем ранее созданые столбцы
    f = (int)numericUpDown1.Value; //размер матрицы
    d = (int)numericUpDown2.Value;
    matrix = new double[d, f]; //создаем матрицу
    dataGridView1.ColumnCount = f;
    dataGridView1.RowCount = d;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.04.2016, 23:24
Помогаю со студенческими работами здесь

Как сделать количество столбцов и строк конечным?, MS Excel 2003
При расширении столбцов значком с 2-мя стрелками, количество столбцов на экране уменьшается и при...

Как сделать чтобы можно было редактировать таблицу через DataGridView?
Заполняю таблицу таким способом. dataGridView1.ColumnHeadersDefaultCellStyle.Font = new...

Как сделать, чтобы данные через TextBox можно было заносить в DataGridView
Как сделать, чтобы данные через TextBox можно было заносить в DataGridView... Приложил скрин...

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


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru