Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > .NET > ASP.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 08.11.2010, 12:00   #1
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,840
По умолчанию Динмассив в цикле. Количество элементов заранее неизвестно. ASP.NET

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

Я хотел использовать TableRowCollection примерно так:
Код:
 TableRowCollection Отрицательные=new TableRowCollection();
 TableRowCollection Положительные=new TableRowCollection();
 while(условие){
  if(некая переменка<0) Отрицательные.Add(Новую строку)
  if(некая переменка>0) Положительные.Add(Новую строку)
 }
но студия заругалась мол "Для этого класса не определен конструктор".

А после мне эти Отрицательные и Положительные нужно вносить в таблицу на форме.

Раз это не получается я подумал что проще будет объявить массив

TableRow[] Отрицательные
TableRow[] Положительные

Но слабо зная СиШарп заткнулся на том что мне не известно сколько конкретно будет элементов.

Отсюда вопрос: Как правильно описать динмассив, который будет расширятся по мере срабатывания условия в цикле?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 08.11.2010, 14:40   #2
Casper-SC
Форумчанин
 
Регистрация: 04.07.2007
Сообщений: 549
По умолчанию

Может нужно это?
Код:
using System.Collections.Generic;
......

            List<TableRow> list = new List<TableRow>(); // <Любой тип> - туда можно вставить
            list.Add(Новую строку);
Ещё есть ArrayList, Dictionary<,> и т.д. В пространстве имён System.Collections.Generic

Я с ASP .NET пока не работал, так что мог и не понять, что реально нужно в этой ситуации.

Последний раз редактировалось Casper-SC; 08.11.2010 в 14:46.
Casper-SC вне форума Ответить с цитированием
Старый 09.11.2010, 10:30   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,840
По умолчанию

Угу понял. Это подойдет.
А жаль что .NET не сделал что-то типа SetLength для обычных массивов, было бы удобнее. Есть там метод AddRange, так он как раз добавляет массив а не коллекцию. Не продумали это микрососовцы что ли?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В массиве из п элементов много совпадающих элементов. Найти количество различных элементов Strax Фриланс 11 12.06.2010 19:13
Вопрос к тем, кто имеет представление о PHP, JSP, ASP, ASP.NET child_of_july Помощь студентам 0 06.06.2008 23:25


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS