50 / 40 / 5
Регистрация: 30.06.2010
Сообщений: 1,191

Переход на новую строку в таблице

02.12.2011, 21:30. Показов 5241. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как сделать, чтобы строка таблицы не продолжалась, а начиналась с новой строки?
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
36
37
38
39
40
41
42
43
44
45
{
            int amax, bmax, amin, bmin, db, da, n;
            amax = Convert.ToInt32(textBox1.Text);
            amin = Convert.ToInt32(textBox2.Text);
            bmax = Convert.ToInt32(textBox3.Text);
            bmin = Convert.ToInt32(textBox4.Text);
            n = Convert.ToInt32(textBox5.Text);
            da = Convert.ToInt32(textBox6.Text);
            db = Convert.ToInt32(textBox7.Text);
 
            DataGridViewRow[] row = new DataGridViewRow[((amax - amin) / da) * ((bmax - bmin) / db) * n+1];
            DataGridViewCell cell1 = new DataGridViewTextBoxCell();
            DataGridViewCell cell2 = new DataGridViewTextBoxCell();
            DataGridViewCell cell3 = new DataGridViewTextBoxCell();
            DataGridViewCell cell4 = new DataGridViewTextBoxCell();
            DataGridViewCell cell5 = new DataGridViewTextBoxCell();
            DataGridViewColumn col1 = new DataGridViewTextBoxColumn();
            DataGridViewColumn col2 = new DataGridViewTextBoxColumn();
            DataGridViewColumn col3 = new DataGridViewTextBoxColumn();
            DataGridViewColumn col4 = new DataGridViewTextBoxColumn();
            DataGridViewColumn col5 = new DataGridViewTextBoxColumn();
 
            col1.HeaderText = "first";
            col2.HeaderText = "second";
            col3.HeaderText = "thirty";
            col4.HeaderText = "forty";
            col5.HeaderText = "fifth";
 
            dataGridView1.Columns.AddRange(col1, col2, col3, col4, col5);
 
            for (int i = amin; i <= amax; i=i + da)
            {
                for (int j = bmin; j <= bmax; j= j + db)
                {
 
                    for (int k = 0; k < n; k++)
                    {
                        row[k].Cells.AddRange(cell1, cell2, cell3, cell4, cell5);
                        dataGridView1.Rows.Add(row[k]);
                        
                    }
                }
            }
            
        }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.12.2011, 21:30
Ответы с готовыми решениями:

Как заменить переход на новую строку на пробел, а пустую строку на переход на новую строку?
Подскажите как из одного текстового файла, в котором в каждом ряде содержится не больше одного слова, перезаписать в другой текстовый файл,...

Переход на новую строку в таблице <td>
Нужна помощь. Из бд вывожу данные в блок &lt;td&gt; нужно чтобы длинные сообщения переводились на новую строку а не в один ряд выводилось,...

Переход на новую строку
При переходе на новую строку вставляет квадратики в выводе. Раньше такого не было. Раньше просто переходило а новую строку без каких либо...

15
162 / 158 / 19
Регистрация: 22.11.2011
Сообщений: 371
02.12.2011, 22:08
Никак. Максимум, что можно сделать - перенос текста внутри ячейки через свойство DataGridViewCellStyle.WrapMode
0
50 / 40 / 5
Регистрация: 30.06.2010
Сообщений: 1,191
03.12.2011, 01:09  [ТС]
тупой впрос навер, но как его использовать?)

Добавлено через 1 час 4 минуты
и мне надо не перенос в ячейке, а новую строку( это уже другое
наверняка какнить можно
0
162 / 158 / 19
Регистрация: 22.11.2011
Сообщений: 371
03.12.2011, 01:27
"как-нить можно", но не с DataGridView. То, что Вы хотите скорее можно добиться через TableLayoutPanel
0
50 / 40 / 5
Регистрация: 30.06.2010
Сообщений: 1,191
03.12.2011, 01:52  [ТС]
Это рисование на форме?
0
162 / 158 / 19
Регистрация: 22.11.2011
Сообщений: 371
03.12.2011, 02:04
Это элемент управления такой. представляющий из себя панель со столбцами и строчками, с автоматическим переносом свежедобавленного контрола на новую строку...
Давайте с другой стороны пойдём, к чему Вам подобный перенос нужен? Чего добиться хочется?
0
50 / 40 / 5
Регистрация: 30.06.2010
Сообщений: 1,191
03.12.2011, 02:13  [ТС]
после прохождения цикла, надо добавить строку с пятью ячейками и вписать в них полученные значения. кол-во строк зависит от введённого числа
0
162 / 158 / 19
Регистрация: 22.11.2011
Сообщений: 371
03.12.2011, 13:18
А, понятно.
Нужно в цикле каждый раз новую строку создавать, а не одной и той же каждый раз ячейки добавлять.
Например:
C#
1
2
3
4
5
6
7
8
9
            dataGridView1.Columns.Add("first", "first");
            dataGridView1.Columns.Add("second", "second");
            DataGridViewRow row;
            for (int i = 0; i< 10;i++)
            {
                row = (DataGridViewRow)dataGridView1.RowTemplate.Clone();
                row.CreateCells(dataGridView1, new object[] { i, "Текст" });
                dataGridView1.Rows.Add(row);
            }
0
50 / 40 / 5
Регистрация: 30.06.2010
Сообщений: 1,191
03.12.2011, 13:51  [ТС]
В строке
C#
1
row = (DataGridViewRow)dataGridView1.RowTemplate.Clone();
Что такое в скобках?
0
162 / 158 / 19
Регистрация: 22.11.2011
Сообщений: 371
03.12.2011, 13:53
Приведение к нужному типу. Метод Clone() возвращает object, поэтому приходится приводить. В данном случае я точно знаю, что вернётся объект с типом DataGridViewRow, поэтому даже проверок не требуется лишних.
0
50 / 40 / 5
Регистрация: 30.06.2010
Сообщений: 1,191
03.12.2011, 14:08  [ТС]
а создавать ячейки заного обязательно? нельзя предыдущие переменные использовать?
0
162 / 158 / 19
Регистрация: 22.11.2011
Сообщений: 371
03.12.2011, 14:14
У каждой строки свои ячейки. Из старых переменных Вы можете разве что значения для ячеек передавать, да и то с тем условием, что тип у переменных не ссылочный, в противном случае просто перезатрёте данные.
Метод CreateCells в первом параметре, как видно, получает DataGridView, чтобы знать, какого типа ячейки и в каком количестве создавать. На самом деле он проходит циклом по всем столбцам, получает от них тип ячейки, а потом возвращает это в виду массива.
0
50 / 40 / 5
Регистрация: 30.06.2010
Сообщений: 1,191
03.12.2011, 14:29  [ТС]
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
{
            int amax, bmax, amin, bmin, db, da, n;
            amax = Convert.ToInt32(textBox1.Text);
            amin = Convert.ToInt32(textBox2.Text);
            bmax = Convert.ToInt32(textBox3.Text);
            bmin = Convert.ToInt32(textBox4.Text);
            n = Convert.ToInt32(textBox5.Text);
            da = Convert.ToInt32(textBox6.Text);
            db = Convert.ToInt32(textBox7.Text);
 
            //DataGridViewRow[] row = new DataGridViewRow[((amax - amin) / da) * ((bmax - bmin) / db) * n+1];
            DataGridViewRow row;
            DataGridViewCell cell1 = new DataGridViewTextBoxCell();
            DataGridViewCell cell2 = new DataGridViewTextBoxCell();
            DataGridViewCell cell3 = new DataGridViewTextBoxCell();
            DataGridViewCell cell4 = new DataGridViewTextBoxCell();
            DataGridViewCell cell5 = new DataGridViewTextBoxCell();
            DataGridViewColumn col1 = new DataGridViewTextBoxColumn();
            DataGridViewColumn col2 = new DataGridViewTextBoxColumn();
            DataGridViewColumn col3 = new DataGridViewTextBoxColumn();
            DataGridViewColumn col4 = new DataGridViewTextBoxColumn();
            DataGridViewColumn col5 = new DataGridViewTextBoxColumn();
 
            col1.HeaderText = "first";
            col2.HeaderText = "second";
            col3.HeaderText = "thirty";
            col4.HeaderText = "forty";
            col5.HeaderText = "fifth";
 
            dataGridView1.Columns.AddRange(col1, col2, col3, col4, col5);
 
            for (int i = amin; i <= amax; i=i + da)
            {
                for (int j = bmin; j <= bmax; j= j + db)
                {
 
                    for (int k = 0; k < n; k++)
                    {
                        //row[k].Cells.AddRange(cell1, cell2, cell3, cell4, cell5);
                        //dataGridView1.Rows.Add(row[k]);
 
                        row = (DataGridViewRow)dataGridView1.RowTemplate.Clone();
                        row.CreateCells(dataGridView1, new object[] { k, "Текст" });
                        dataGridView1.Rows.Add(row);
                    }
                }
            }
            
        }
не получается всеравно
0
162 / 158 / 19
Регистрация: 22.11.2011
Сообщений: 371
03.12.2011, 14:35
У Вас 3 вложенных цикла, за что они отвечают?
0
50 / 40 / 5
Регистрация: 30.06.2010
Сообщений: 1,191
03.12.2011, 14:49  [ТС]
Задание.
По заданным вещественным значениям a, b и целому n получить таблицу значе-ний величины Yi , вычисляемой по правилу:
а) значения Yi = f (a,b,i), где f-заданная функция от трех аргументов;
а меняется от amin до amax c шагом da,
b меняется от bmin до bmax с шагом db,
i меняется от 1 до n с шагом 1;
Функция f определяется вариантом задания.

Требования к программе.

- Значения amin, amax, bmin, bmax, da, db, n являются исходными данными, которые вводятся с клавиатуры в процессе выполнения программы.
- Таблица должна иметь вид сетки и содержать следующие столбцы: a, b, i, Yi.
- В программе использовать три вложенных цикла, внутренний по переменной i.
- В особых точках значения функции не вычислять, а вместо них выводить звездочки.
- Предусмотреть проверку корректности вводимых данных.
Миниатюры
Переход на новую строку в таблице  
0
50 / 40 / 5
Регистрация: 30.06.2010
Сообщений: 1,191
04.12.2011, 23:06  [ТС]
Помогите ктонить)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.12.2011, 23:06
Помогаю со студенческими работами здесь

Переход на новую строку
Как убрать переход на новую строку при выводе строк функцией print(s)?

Переход на новую строку
Файл открыт в текстовом режиме. Есть строка , ее надо записать в файл, и перейти на новую строку для следующей записи. fputs(stroka,f); ...

Переход на новую строку
У меня есть имя человека полное ФИО которое выводиться в строку макета, а мне надо что бы после фамилии имя и отчество переходили на новую...

Переход на новую строку
фрагмент кода запись строки в текстовый файл: fputs(stroka,f); stroka имеет значение 100110110101 без нуль символа. как перейти на...

Переход на новую строку
Добрый день, цикл должен считывать из файла 12 слов (начиная со второй строки файла), но он этого почему-то не делает. (похоже, что он...


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

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

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru