Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 08.11.2009
Сообщений: 111

Нужно отобразить результаты поиска в таблицу dataGridView

10.03.2012, 22:13. Показов 3178. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, помогите пожалуйста реализовать поиск и отобразить результаты поиска во вторую таблицу dataGridView2. В первую таблицу dataGridView1 добавляются нужные данные. Вот сама задача:
Опишите класс AVTO (марка машины, цвет, цена, максимальная скорость). Введите с кла-натуры данные в массив, состоящий из шести элементов типа AVTO. Выведите на экран инфор¬мацию о машинах, скорость которых меньше введенного с клавиатуры числа. Если такой маши нет, то программа должна выдать соответствующее сообщение на экран

Класс я сам описал, данные добавляются в таблицу, а с поиском беда. Помогите пожалуйста.
Вот архив
Вложения
Тип файла: rar Avto.rar (49.2 Кб, 16 просмотров)
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.03.2012, 22:13
Ответы с готовыми решениями:

Github. Как собрать результаты поиска в таблицу?
Требуется Собрать результаты поиска в таблицу. Или Осуществить поиск в собственной программе и собрать результаты в таблицу. ...

Как в dataGridView отобразить таблицу из DataSet?
Основной вопрос, почему по выражению dataGridView1.DataSource = ds1.Tables; в "dataGridView" не отображается таблица ? Или как...

Как отобразить в DataGridView не таблицу а запрос?
Всем здравствуйте. Есть база данных MSAccess, содержащая в себе одну таблицу и несколько запросов, сформированных непосредственно в базе...

13
 Аватар для y-fox
519 / 511 / 68
Регистрация: 19.09.2011
Сообщений: 826
10.03.2012, 23:22
Лучший ответ Сообщение было отмечено как решение

Решение

используй linq:

C#
1
2
3
4
5
6
7
8
9
10
11
Avto[] avtoz = new Avto[6];//твой список автомобилей;
/*тут идет заполнение и т.д.*/
//отображение всех автомобилей со скоростью speed и больше
var sa=  avtoz.Where(a=>a.Speed>=speed);/*Этой строчкой ты получишь все автомобили из списка, с заданным условием.
В данном случае, у которых будет Speed >= speed */ 
foreach(var avto in sa)
{
   //тут ты это выводишь 
}
if(sa.Count()==0)
   Console.WriteLine("Такого нету");
3
0 / 0 / 0
Регистрация: 08.11.2009
Сообщений: 111
10.03.2012, 23:35  [ТС]
подскажи пожалуйста куда это вставить и как вывести в таблицу, а то я не понимаю как...Если не трудно можешь архив прислать?

Добавлено через 8 минут
Измените пожалуйста мою прогу в архиве, очень прошу
0
 Аватар для y-fox
519 / 511 / 68
Регистрация: 19.09.2011
Сообщений: 826
10.03.2012, 23:42
обработчик события кнопки "поиск", сделай себе
C#
1
2
3
4
5
6
7
8
9
10
11
12
try{
int maxi = Convert.ToInt16(textBox5.Text);
var avtoz = sko.avtom.Where(a=>a.maxskor >=maxi);
dataGridView2.Rows.Clear();
foreach (ClassAvto sk in avtoz)
            {
                string[] row = { Convert.ToString(sk.marka) + "", Convert.ToString(sk.color) + "", Convert.ToString(sk.cena) + " руб.", Convert.ToString(sk.maxskor) + " км/ч" };
                dataGridView2.Rows.Add(row);
            }
if(avtoz.Count()==0)
 MessageBox.Show("Не найдено");
}catch{MessageBox.Show("Не удалось произвести поиск");}
2
0 / 0 / 0
Регистрация: 08.11.2009
Сообщений: 111
10.03.2012, 23:48  [ТС]
var avtoz = sko.avtom.Where(a => a.maxskor >= maxi);
и на эту строчку жалуется
if (avtoz.Count() == 0)
Красной линией подчеркнуто
0
 Аватар для y-fox
519 / 511 / 68
Регистрация: 19.09.2011
Сообщений: 826
10.03.2012, 23:59
Сделай так
C#
1
2
3
4
5
public class Avto
{
       public List<ClassAvto> avtom = new List<ClassAvto>();
       /* все остальное*/
}
Или поиск измени:
C#
1
2
3
4
5
6
7
8
9
private IEnumerable<ClassAvto> Search(int speed)
{
   foreach(var avto in ska.avtom)
        if(avto.maxskor>=speed)
           yield return avto;
}
 
//в обработчике
var avtoz = Search(maxi);
1
107 / 107 / 9
Регистрация: 19.12.2010
Сообщений: 417
11.03.2012, 00:02
Попробуйте заменить:
C#
1
if (avtoz.Count() == 0)
на:
C#
1
if (avtoz.Count == 0)
или:
C#
1
if (avtoz.Length == 0)
А вообще - наведите на строчку и прочитайте ошибку. Или лучше смотрите ошибки в окне "Ошибки". Ваш Кэп
0
0 / 0 / 0
Регистрация: 08.11.2009
Сообщений: 111
11.03.2012, 00:09  [ТС]
Ввел в таблицу скорости 110, 200, а в для поиска 300, и вывело ене найдено, хотя должно было вывести
0
 Аватар для y-fox
519 / 511 / 68
Регистрация: 19.09.2011
Сообщений: 826
11.03.2012, 00:11
Цитата Сообщение от FutureCome Посмотреть сообщение
Попробуйте заменить:
C#
1
if (avtoz.Count() == 0)
на:
C#
1
if (avtoz.Count == 0)
или:
C#
1
if (avtoz.Length == 0)
А вообще - наведите на строчку и прочитайте ошибку. Или лучше смотрите ошибки в окне "Ошибки". Ваш Кэп
Where(a=>a/*...*/) - вернет IEnumerable<ClassAvto>, у него нет свойства Length и Count, есть только метод Count(), а проблема в том, что у него используется как контейнер ArrayList, который не унаследован от IEnumerable, на это я не обратил внимания, когда давал совет использовать linq.

Добавлено через 1 минуту
Цитата Сообщение от сашк Посмотреть сообщение
Ввел в таблицу скорости 110, 200, а в для поиска 300, и вывело ене найдено, хотя должно было вывести
знак в поиске поменяй, не >=, а <=

a.maxskor<=speed
1
0 / 0 / 0
Регистрация: 08.11.2009
Сообщений: 111
11.03.2012, 00:18  [ТС]
обработчик такой, верно?
try
{
int maxi = Convert.ToInt16(textBox5.Text);
var avtoz = sko.avtom.Where(a => a.maxskor <= maxi);
dataGridView2.Rows.Clear();
foreach (ClassAvto sk in avtoz)
{
string[] row = { Convert.ToString(sk.marka) + "", Convert.ToString(sk.color) + "", Convert.ToString(sk.cena) + " руб.", Convert.ToString(sk.maxskor) + " км/ч" };
dataGridView2.Rows.Add(row);
}
if (avtoz.Count() == 0)
MessageBox.Show("Не найдено");
}
catch { MessageBox.Show("Не удалось произвести поиск"); }
}
0
 Аватар для y-fox
519 / 511 / 68
Регистрация: 19.09.2011
Сообщений: 826
11.03.2012, 00:24
Вроде да.
2
0 / 0 / 0
Регистрация: 08.11.2009
Сообщений: 111
11.03.2012, 00:31  [ТС]
все равно не может найти. Может у тебя найдет? добавь пожалуйста архив)
0
 Аватар для y-fox
519 / 511 / 68
Регистрация: 19.09.2011
Сообщений: 826
11.03.2012, 00:38
Шапку dataGridView2 заполните.
2
0 / 0 / 0
Регистрация: 08.11.2009
Сообщений: 111
11.03.2012, 00:41  [ТС]
так у меня постоянно выходит сообщение либо не найдено, либо не удалось воспроизвести поиск

Добавлено через 2 минуты
оо, круто, щас работает)))Спасибо большое!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.03.2012, 00:41
Помогаю со студенческими работами здесь

Отобразить в dataGridView одну таблицу и один столбец другой
Столкнулся с такой проблемой! У меня один dataGriview. Туда я хочу запихнуть две таблице, но одну таблицу я хочу полностью вставить, а с...

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

Как отобразить таблицу из Базы данных ms access в DataGridView программным путём?(написав всё в коде)
Здравствуйте. Как отобразить таблицу из Базы данных ms access в DataGridView программным путём?(написав всё в коде) Я что-то попытался...

Выводит ли результаты поиска стандартная функция поиска в html? Код привел ниже
При обращении к стандартному поиску в html, код которого приведен ниже, будут ли выводится результаты поиска? Использую только html и css. ...

Во втором DataGridView отобразить данные, используя значения выбранной строчки первого DataGridView
Доброго времени суток, Ув. Форумчане! Такой вопрос: Во во втором DataGridView отобразить данные используя значения выбранной строчки...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru