Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
My C# lvl is bad
1 / 1 / 0
Регистрация: 04.01.2023
Сообщений: 159

Фильтрация по параметрам в datagridview

09.08.2023, 12:11. Показов 2711. Ответов 63
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, делаю программу которая содержит информацию о человеках(ФИО дата рождения, город проживания).
Так же есть возможность фильтрации(т.е нужен определённый человек и с помощью фильтрации можно его найти)
Как раз таки на фильтрации я и застрял.
Код:
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace Z1
{
    public partial class Form51 : Form
    {
        
        Random random = new Random();
        public Form51()
        {
            //label1.BackColor = System.Drawing.Color.Transparent;
            InitializeComponent();
            dataGridView1.ColumnCount = 5; dataGridView1.RowCount = 5;
        }
        private Point MouseHook;
        
        private void button1_Click(object sender, EventArgs e)
        {
            
            string[] name = new string[] {"Виктор", "Константин", "Александр","Вадим", "Владимир", "Дмитрий","Никита", "Денис", "Мирон", "Богдан"};
            string[] surename = new string[] {"Вадимов","Иванов","Смирнов", "Кузнецов", "Попов", "Васильев", "Петров", "Соколов", "Михайлов", "Новиков", "Федоров", "Морозов", "Волков", "Алексеев", "Лебедев", "Семенов"};
            string[] patronimic = new string[] { "Абрамович", "Валентинович", "Валерианович", "Валериевич", "Веньяминович", "Витальевич", "Давидович", "Денисович", "Дмитриевич", "Владимирович", "Владиславович", "Евгениевич", "Елисеевич", "Захарович", "Ильич", "Максимович", "Петрович", "Прохорович", "Вадимович", "Вавилич", "Борисович", "Бонифатович", "Богданович" };
            string[] date = new string[] {"2000", "2001", "2000", "2002", "2003", "2004", "2005", "2006", "2007", "2008", "2009", "2010" };
            string[] citi = new string[] {"Москва", "Санкт-Петербург", "Новосибирск", "Екатеринбург", "Нижний Новгород", "Казань", "Челябинск", "Омск","Самара", "Ростов-на-Дону", "Уфа", "Красноярск", "Воронеж", "Пермь", "Волгоград"};
// Пока что сделал рандомные ФИО и тд. в дальнейшем планируется информацию брать из файла/базы данных
            //foreach (string s in strings)
            //{
            int n = 0;
            n = dataGridView1.Rows.Count;
            //}
            for (int i = 0; i < 1; i++)
                for (int j = 0; j < n; j++)
                {
                    string str = name[random.Next(name.Length)];
                    string stk = surename[random.Next(surename.Length)];
                    string patron = patronimic[random.Next(patronimic.Length)];
                    string data = date[random.Next(date.Length)];
                    string cuty = citi[random.Next(citi.Length)];
                    this.dataGridView1[i + 1, j].Value = str;
                    this.dataGridView1[i, j].Value = stk;
                    this.dataGridView1[i+2,j].Value = patron;
                    this.dataGridView1[i+3,j].Value = data;
                    this.dataGridView1[i+4,j].Value = cuty;// знаю что хреново сделал, но по-другому не идет
                    
 
                }
                
        }
 
        private void btnClose_Click(object sender, EventArgs e)
        {
            this.Close();
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            int n = Convert.ToInt16(numericUpDown1.Value);
            dataGridView1.Rows.Add(n);
        }
 
        private void textBox1_MouseDown(object sender, MouseEventArgs e)
        {
            textBox1.Text = "";
        }
 
        private void textBox1_MouseEnter(object sender, EventArgs e)
        {
            textBox1.Text = "Добавить человека";
            textBox1.ForeColor = Color.LightGray;
        }
 
        private void textBox1_MouseMove(object sender, MouseEventArgs e)
        {
            //textBox1.Text = "";
        }
 
        private void textBox1_MouseLeave(object sender, EventArgs e)
        {
            //textBox1.Text = "Добавить пиопла";
            //textBox1.ForeColor = SystemColors.ControlText;
        }
 
        private void textBox1_TextChanged(object sender, EventArgs e)
        {
 
        }
 
        private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            char l = e.KeyChar;
            if ((l < 'А' || l > 'я') && l != '\b' && l != 32)
            {
                e.Handled = true;
            }
        }
 
        private void button4_Click(object sender, EventArgs e)
        {
            for (int i = 0; i < dataGridView1.RowCount; i++)
            {
                dataGridView1.Rows[i].Selected = false;
                for (int j = 0; j < dataGridView1.ColumnCount; j++)
                    if (dataGridView1.Rows[i].Cells[j].Value != null)
                        if (dataGridView1.Rows[i].Cells[j].Value.ToString().Contains(textBox_FiltrCity.Text))
                        {
                            dataGridView1.Rows[i].Selected = true;
 
                            break;
                        }
            }
        }
 
        private void button_Filtr_Click(object sender, EventArgs e)
        {
            textBox_FiltrCity.Visible = true;
            button4.Visible = true;
            label_City.Visible = true;
            button_Filtr.Visible = false;
        }
 
        private void Form51_MouseMove(object sender, MouseEventArgs e)
        {
            if (e.Button != MouseButtons.Left) MouseHook = e.Location;
            Location = new Point((Size)Location - (Size)MouseHook + (Size)e.Location);
        }
 
        private void label1_Click(object sender, EventArgs e)
        {
 
        }
    }
}
Вид формы прикрепляю





Буду рад вашей помощи
Есть вопросы? Пишите я объясню принцип работы
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.08.2023, 12:11
Ответы с готовыми решениями:

Фильтрация по нескольким параметрам при обращении к БД
Есть база, но основании следующего кода: public class Auto { public int AutoId { get; set; } public string BrandName { get;...

фильтрация по 2м параметрам
DM.ADOT_Computer.Filtered:=false; dm.ADOT_Computer.Filter:='ID_sotrudniki = ' + QuotedStr(inttostr(DM.ADOT_ObchayaID_sotrydnic.Value)) ...

Фильтрация по нескольким параметрам
Всем доброго времени суток. Кто знает как можно отфильтровать ADOTable по нескольким прараментам? Пытаюсь так: ...

63
My C# lvl is bad
1 / 1 / 0
Регистрация: 04.01.2023
Сообщений: 159
13.08.2023, 14:39  [ТС]
Студворк — интернет-сервис помощи студентам
wizard41, это то понятно, у меня есть новая версия, просто не хотелось бы всё переделывать
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3463 / 2784 / 575
Регистрация: 04.09.2018
Сообщений: 8,757
Записей в блоге: 3
13.08.2023, 14:46
Цитата Сообщение от PrOgGeR_nA_5 Посмотреть сообщение
просто не хотелось бы всё переделывать
руку зато набьешь
Тут переделывать то нечего особо.
1
My C# lvl is bad
1 / 1 / 0
Регистрация: 04.01.2023
Сообщений: 159
13.08.2023, 15:00  [ТС]
wizard41,
Цитата Сообщение от wizard41 Посмотреть сообщение
руку зато набьешь
Тут переделывать то нечего особо.
Но дело не в том, что переписывать особо нечего, а в том, что я пишу на net.framework то, что вы пишите на NET 7.0
P.S программа работает! все сделал, только вот доработать надо с методом Contains(), а так всё идеально
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3463 / 2784 / 575
Регистрация: 04.09.2018
Сообщений: 8,757
Записей в блоге: 3
13.08.2023, 22:22
Цитата Сообщение от PrOgGeR_nA_5 Посмотреть сообщение
только вот доработать надо с методом Contains()
Параметр StringComparison.OrdinalIgnoreCase говорит компаратору сверять буковки не смотря на регистр, то есть "смирнов" будет равен "Смирнов". Это для того, чтобы в текстбокс поиска не обязательно было вводить имена/фамилии/города с большой буквы.
Если у тебя это по каким-то причинам не работает (ругается), тогда примени финт ушами, например такой:
C#
1
x.SurName.ToLower().Contains(tbSearch.Text.ToLower()).ToArray();
1
My C# lvl is bad
1 / 1 / 0
Регистрация: 04.01.2023
Сообщений: 159
14.08.2023, 17:34  [ТС]
wizard41, скажите пожалуйста как создать форму не на фрамеворке, а на нете? у меня не появляется конструктор форм, в инете искал ничего не помогает
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,767
Записей в блоге: 4
14.08.2023, 17:38
Цитата Сообщение от PrOgGeR_nA_5 Посмотреть сообщение
у меня не появляется конструктор форм
Создать проект NET. Дизайнер будет тупить. Закрыть проект и открыть снова - всё должно заработать.
0
My C# lvl is bad
1 / 1 / 0
Регистрация: 04.01.2023
Сообщений: 159
14.08.2023, 17:43  [ТС]
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
Создать проект NET. Дизайнер будет тупить.
Вот такая фигня
Миниатюры
Фильтрация по параметрам в datagridview  
0
My C# lvl is bad
1 / 1 / 0
Регистрация: 04.01.2023
Сообщений: 159
14.08.2023, 17:43  [ТС]
написано "присоединение" и нет конструктора форм
0
3271 / 3377 / 559
Регистрация: 17.02.2019
Сообщений: 5,294
14.08.2023, 17:45
Цитата Сообщение от PrOgGeR_nA_5 Посмотреть сообщение
скажите пожалуйста как создать форму не на фрамеворке, а на нете?
скрин
0
My C# lvl is bad
1 / 1 / 0
Регистрация: 04.01.2023
Сообщений: 159
14.08.2023, 17:46  [ТС]
January29, я создаю, но нету конструктора форм и пишет "присоединение"
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,767
Записей в блоге: 4
14.08.2023, 17:46
Цитата Сообщение от PrOgGeR_nA_5 Посмотреть сообщение
написано "присоединение" и нет конструктора форм
Вот тут читайте, там есть решение - При создании проекта вместо запуска или отладки появляется Присоединение, а обозреватель решений не показывает проект
0
3271 / 3377 / 559
Регистрация: 17.02.2019
Сообщений: 5,294
14.08.2023, 17:47
Цитата Сообщение от PrOgGeR_nA_5 Посмотреть сообщение
Вот такая фигня
попробуйте вот это При создании проекта вместо запуска или отладки появляется Присоединение, а обозреватель решений не показывает проект

Добавлено через 41 секунду
Andrey-MSK, ха ха две одинаковые ссылки
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,767
Записей в блоге: 4
14.08.2023, 17:48
Цитата Сообщение от January29 Посмотреть сообщение
ха ха две одинаковые ссылки
У вас с ответом, а меня просто на тему
1
3271 / 3377 / 559
Регистрация: 17.02.2019
Сообщений: 5,294
14.08.2023, 17:50
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
У вас с ответом, а меня просто на тему
ну да разные
1
My C# lvl is bad
1 / 1 / 0
Регистрация: 04.01.2023
Сообщений: 159
14.08.2023, 18:39  [ТС]
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
Вот тут читайте, там есть решение -
Цитата Сообщение от January29 Посмотреть сообщение
попробуйте вот это
Попробую, спасибо за отклик

Добавлено через 46 минут
Цитата Сообщение от January29 Посмотреть сообщение
попробуйте вот это
чет не получается, скачал всё заново, но все равно не получается, конструктор форм не показывается и "присоединение" вместо отладки осталось
0
3271 / 3377 / 559
Регистрация: 17.02.2019
Сообщений: 5,294
14.08.2023, 19:02
Цитата Сообщение от PrOgGeR_nA_5 Посмотреть сообщение
чет не получается,
попробуйте открыть, создал пустой проект. WinFormsApp2.zip
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3463 / 2784 / 575
Регистрация: 04.09.2018
Сообщений: 8,757
Записей в блоге: 3
14.08.2023, 19:09
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
Вот тут читайте, там есть решение
Никогда такой проблемы не возникало, но решил посмотреть... На трех машинах проверил - нигде не вижу dotnet x86...
Откуда вы его берете? Студии везде разные (немного) стоят, но нигде такого нет.
0
3271 / 3377 / 559
Регистрация: 17.02.2019
Сообщений: 5,294
14.08.2023, 19:13
Цитата Сообщение от wizard41 Посмотреть сообщение
Откуда вы его берете?
Такой-же вопрос, у меня такого нет. Даже не знаю.
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3463 / 2784 / 575
Регистрация: 04.09.2018
Сообщений: 8,757
Записей в блоге: 3
14.08.2023, 19:16
Цитата Сообщение от January29 Посмотреть сообщение
Даже не знаю.
Как вариант, в универах могут студентам давать из своих репозиториев, где только какая-нибудь 2013-го года лежит. Ну чтоб сами не искали не качали. Может быть с ней и лезет дотнет х86.
0
3271 / 3377 / 559
Регистрация: 17.02.2019
Сообщений: 5,294
14.08.2023, 19:20
Цитата Сообщение от wizard41 Посмотреть сообщение
Как вариант
Может

Добавлено через 2 минуты
может еще с первых net core 2.1 и т.д.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.08.2023, 19:20

Фильтрация json по нескольким параметрам
Доброго времени суток. Прошу помощи уважаемого сообщества. Есть json и набор параметров для фильтрации. Подскажите, пожалуйста, какая...

Фильтрация продуктов по нескольким параметрам
Здравствуйте, у меня такая проблема, перегуглил уже все, что можно, как мне кажется, но не могу решить.. У меня есть форма с фильтрами,...

Фильтрация по заданным параметрам, исправить код
var ks,kss:string; kav:string; begin Table1.Filtered:=false; kss:=''; kav:=datetostr(Datetimepicker1.date); if...

Фильтрация двух связанных списков по нескольким параметрам
Добрый день. Помогите пожалуйста. Есть две коллекции: студенты и секции. Нужно вывести названия секций, которые открылись после 2000го...

Фильтрация datqagridView по нескольким параметрам, из нескольких столбцов
Здравствйте, собественно по названию понятен вопрос, есть таблица с 5 колноками и мне необходимо что бы производилась фильтрация по...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/ TL DR Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru