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

Сделать код для кнопок Добавления и Сортировки

07.06.2016, 22:21. Показов 4300. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дана очередь данных о клиентах пункта проката автомобилей: ФИО, адрес (улица, дом, квартира) и марка машины. Во второй массив записать отсортированные данные только тех людей, кто ездит на "Audi".
Помогите сделать код для кнопок Добавления и Сортировки
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
 private void AddButton_Click(object sender, EventArgs e)
        {
            //если текстовые поля не пусты,
            if (textBox1.Text != "" && textBox2.Text != "" && textBox3.Text != "")
            {
                //то создать новую запись в таблице
                DataRow row = dataGridView1.NewRows(); здесь подчеркивает NewRows
                //заполнить ее столбцы
                row["FIO"] = textBox1.Text;
                row["Adres"] = textBox2.Text;
                row["Marka"] = textBox3.Text;
                //и добавить запись в таблицу
                dataGridView1.Rows.Add(row);
 
 private void SolveButton_Click(object sender, EventArgs e)
        {
            //очистить коллекцию res
            res.Clear();
            //очистить содержимое таблиц на форме
            dataGridView1.Rows.Clear();
            dataGridView2.Rows.Clear();
            //просматриваем исходный массив
            
                //удаляем найденные точки из исходного массива
              
                //отображаем 2-й массив в таблице на форме
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.06.2016, 22:21
Ответы с готовыми решениями:

Переделать код для сортировки массива на код для сортировки двумерной матрицы
возникла проблема, не могу переделать код для сортировки массива на код для сортировки двумерной матрицы. вот исходный код void...

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

Создал код для сортировки медотом пузырька цикл идёт, а сортировки нет
def check(l): a = 0 while True: b = a + 1 if b == len(l): break if l > l: ...

9
 Аватар для Cuguyc
44 / 44 / 16
Регистрация: 02.06.2016
Сообщений: 95
08.06.2016, 10:45
Писал на WPF и в код бехаинде, что бы было проще интерпретировать в WinForms
Вот код программы:

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
public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
            collection = new ObservableCollection<MyStruct>();
            collectionSort = new ObservableCollection<MyStruct>();
            dgView.ItemsSource = collection; //связываю DataGrid и ObservableCollection collection 
            dgViewSort.ItemsSource = collectionSort;//связываю DataGrid2 и ObservableCollection collectionSort 
        }
 
        private void mybutton_Click(object sender, RoutedEventArgs e)//Добавление
        {
            MyStruct info = new MyStruct();
            if (tbfio.Text != "" && tbAdress.Text != "" && tbMarka.Text != "")
            {
                info.FIO = tbfio.Text;
                info.Adress = tbAdress.Text;
                info.Marka = tbMarka.Text;
            }
            collection.Add(info);
        }
 
        ObservableCollection<MyStruct> collection { get; set; }
        ObservableCollection<MyStruct> collectionSort { get; set; }
 
        public struct MyStruct //Со структурой работать удобнее
        {
            public string FIO { get; set; }
            public string Adress { get; set; }
            public string Marka { get; set; }
        }
 
        private void btSort_Click(object sender, RoutedEventArgs e)//Сортировка второй коллекции
        {
            foreach (var item in collection.Where(x=>x.Marka == "Audi"))
            {
                collectionSort.Add(item);
            }
        }
    }
1
0 / 0 / 0
Регистрация: 07.06.2016
Сообщений: 5
08.06.2016, 12:46  [ТС]
Cuguyc, в чем может быть ошибка подчеркивает ObservableCollection<MyStruct>(); и .ItemsSource
0
 Аватар для Cuguyc
44 / 44 / 16
Регистрация: 02.06.2016
Сообщений: 95
08.06.2016, 13:41
DuryaginAnd,
C#
1
using System.Collections.ObjectModel;
Добавлено через 15 минут
и ещё вместо ItemsSourse в WinForms вроде используют DataSource, точно не помню, надо проверить

Добавлено через 36 минут
Всё, я разобрался =) в WinForms для привязки лучше использовать BindingList<T>
C#
1
2
3
4
5
            collection = new BindingList<MyStruct>();
            collectionSort = new BindingList<MyStruct>();
            
            dataGridView1.DataSource = collection;
            dataGridView2.DataSource = collectionSort;
0
 Аватар для Cuguyc
44 / 44 / 16
Регистрация: 02.06.2016
Сообщений: 95
08.06.2016, 13:45
Лучший ответ Сообщение было отмечено DuryaginAnd как решение

Решение

Кликните здесь для просмотра всего текста
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
public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
 
            collection = new BindingList<MyStruct>();
            collectionSort = new BindingList<MyStruct>();
            
            dataGridView1.DataSource = collection;
            dataGridView2.DataSource = collectionSort;
            
        }
 
        public struct MyStruct
        {
            public string FIO { get; set; }
            public string Adress { get; set; }
            public string Marka { get; set; }
        }
 
        BindingList<MyStruct> collection { get; set; }
        BindingList<MyStruct> collectionSort { get; set; }
 
 
 
        private void button1_Click(object sender, EventArgs e)
        {
 
            MyStruct info = new MyStruct();
            if (textBox1.Text != "" && textBox2.Text != "" && textBox3.Text != "")
            {
                info.FIO = textBox1.Text;
                info.Adress = textBox2.Text;
                info.Marka = textBox3.Text;
            }
 
            collection.Add(info);
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            foreach (var item in collection.Where(x => x.Marka == "Audi"))
            {
                collectionSort.Add(item);
            }
        }
 
    }
Миниатюры
Сделать код для кнопок Добавления и Сортировки  
1
0 / 0 / 0
Регистрация: 07.06.2016
Сообщений: 5
08.06.2016, 15:43  [ТС]
Cuguyc, Сделал все также, без ошибок запускается программа, но кнопки не работают, записи не добавляются.
0
 Аватар для Cuguyc
44 / 44 / 16
Регистрация: 02.06.2016
Сообщений: 95
08.06.2016, 16:46
Хмм, странно...
Вы везде поменяли ObservableCollection на BindingList?

Поставьте точку останова и посмотрите входит ли программа в метод
C#
1
private void button1_Click(object sender, EventArgs e)
Добавляются ли данные в коллекцию:
C#
1
BindingList<MyStruct> collection
Вообще я скинул полный код класса, посмотрите совпадают ли наименования всех контролов в коде.
0
0 / 0 / 0
Регистрация: 07.06.2016
Сообщений: 5
08.06.2016, 17:28  [ТС]
Cuguyc, я все поменял и проверил, вот посмотритеl9.rar
0
 Аватар для Cuguyc
44 / 44 / 16
Регистрация: 02.06.2016
Сообщений: 95
09.06.2016, 08:47
У вас не были прикреплены события к кнопкам в коде, то есть методы есть, названия у них как у функций обработчика событий, но к кнопкам они не привязаны.
Заново создайте функции обработки событий. В конструкторе форм кликните два раза по одной кнопке и по другой кнопке, это создаст два события, и скопируйте туда код из соответствующих функций.
Миниатюры
Сделать код для кнопок Добавления и Сортировки  
1
0 / 0 / 0
Регистрация: 07.06.2016
Сообщений: 5
09.06.2016, 12:24  [ТС]
Cuguyc, спасибо большое, все работает.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.06.2016, 12:24
Помогаю со студенческими работами здесь

Как прописать код, что бы код для социальных кнопок?
Всем привет! Редактирую файл footer.php шаблона для WP. Не могу понять как сделать, что бы при нажатии на социальную кнопку, посетитель...

Код для добавления в таблицу БД данных
пишу такой код для добавления в таблицу БД данных strSQL = &quot;INSERT INTO Продукция VALUES (&quot; +...

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

Код VB для добавления новой записи в таблицу
Здравствуйте! Не могу найти код VB для добавления новой записи. Помогите

Код для кнопок компонента ToolBar
на форме компонент Image и ToolBar на ToolBar 2 кнопки ToolButton пишу код для кнопки чтобы открыть изображение if...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru