Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
.NET 6

Формирование списка combobox

02.12.2023, 20:35. Показов 3145. Ответов 55
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Имеется папка в решении проекта "Detali", в ней имеется большой перечень папок с именем каждой детали. В каждой папке есть файл *.cs с идентичным названием, как и сама папка. Эти названия должны будут использоваться как ссылочные.

Как сформировать список в combobox из наименований деталей (наименование каждой папки в папке Detali), которые должны будут содержаться в виде некого параметра/мени в файлах *.cs каждой папки для отображения в combobox.

Плюс еще при выборе каждого пункта в combobox должна будет отображаться картинка в picturebox располагающаяся в соответствующей папке, от которой идет ссылка на выбираемый пункт в combobox.

То есть, что мне нужно прописать для сформирования списка в combobox, и отображения картинки в picturebox. И конструкцию, которую мне нужно будет прописать в каждом файле *.cs для формирования отображаемого имени пункта в combobox.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.12.2023, 20:35
Ответы с готовыми решениями:

Работа с элементами ComboBox в DataGridView: формирование списка в зависимости от условия
Приветствую. Снова нужна ваша профессиональная помощь. Дата грид. Допустим есть 2 столбца. Один текстовый, второй - комбобокс. Итак....

Формирование ComboBox из ini
Здравствуйте! Имеется форма, на форме combobox. Имеется файл ini: $Number1=1 $Name1=TEST $Time1= $Class1=

Формирование Combobox по DataGridView - ошибка NullReferenceException was unhandled
Здравствуйте. Суть проблемы в следующем. Имеется DataGridView, в который через DataTable загружается содержимое XML-файла, в...

55
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
08.12.2023, 14:53  [ТС]
Студворк — интернет-сервис помощи студентам
Andrey-MSK, вот я просто хотел, чтобы не писать это монотонное присваивание ... Я и хотел сначала изъять все пути к файлам cs в папке детали ... Изъять пути к этим файлам... И уже сославшись на эти файлы, не по названиям, а по путям ... взять из них параметр и сформировать список... И все

Добавлено через 15 минут
Andrey-MSK, вот я и хотел просто взять и вставить
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
        public Form1()
        {
            InitializeComponent();
 
            string path = "C:\\Users\\Ярослав\\source\\repos\\Vozduhovodov\\Vozduhovodov\\Detali";
            string[] path_detali = Directory.GetDirectories(path);
            foreach (string dir in path_detali)
            {
                var forms = typeof(Program).Assembly.GetTypes().Where(t => t.IsAssignableTo(typeof(Form)));
                string[] names = dir.Split('\\');
                String s = names[names.Length - 1];
                string s1 = s[4..];
                string new_path = path + "\\" + s + "\\" + s1 + ".cs";
                string new_path1 = "Detali." + s;
                string a = Detali._001_ØP.ØP.a;
                ComboBox1.Items.Add(a);
            }
        }
вместо
C#
1
Detali._001_ØP.ØP.a
сделать
C#
1
string a = [new_path1 ].[s1].a
тем самым сославшись на параметр a

OwenGlendower,
к примеру
1 прямик:
длина
диаметр
формула: длина*пи*диаметр (все в метрах)

2.3.4.5.6
отвод разного угла:

диаметр
внутренний радиус
угол
формула: 2*пи*(внутренний радиус + 0,5* диаметр)*(пи*диаметр)/(360/угол)
0
 Аватар для Andrey-MSK
3386 / 2272 / 388
Регистрация: 14.08.2018
Сообщений: 7,690
Записей в блоге: 4
08.12.2023, 15:03
Цитата Сообщение от OwenGlendower Посмотреть сообщение
приведите пожалуйста примеры нескольких деталей. Для каждой из них интересует список свойств и формула
Тоже хотелось бы увидеть что же там такое...
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Тут в самом деле можно сделать БД с описанием деталей
Я это сразу предлагал...

Добавлено через 1 минуту
Цитата Сообщение от xamelione25 Посмотреть сообщение
к примеру
1 прямик:
длина
диаметр
формула: длина*пи*диаметр (все в метрах)
2.3.4.5.6
отвод разного угла:
диаметр
внутренний радиус
угол
формула: (внутренний радиус + 0,5* диаметр)*(пи*диаметр)*(360/угол)
Всё это в БД запихать вообще вопросов не возникнет... 5 - 6 таблиц с разными наборами и в них всё что нужно для всех типоразмеров. Называется Сортамент.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18357 / 14287 / 5370
Регистрация: 17.03.2014
Сообщений: 28,967
Записей в блоге: 1
08.12.2023, 16:42
Цитата Сообщение от xamelione25 Посмотреть сообщение
к примеру
1 прямик:
длина
диаметр
формула: длина*пи*диаметр (все в метрах)
2.3.4.5.6
отвод разного угла:
диаметр
внутренний радиус
угол
формула: 2*пи*(внутренний радиус + 0,5* диаметр)*(пи*диаметр)/(360/угол)
Окей. Но есть еще вопросы:

1) У вас детали делятся на две группы. По какому признаку это происходит? Здесь на скриншоте написано про "плоские" и "объемные" фигуры.

2) Вот тут на скриншоте написано про "2 картинки". Что это за картинки?

3) Соединение каким образом задается? В UI я имею в виду. В редакторе (номер 2 на скриншоте).

Цитата Сообщение от Andrey-MSK Посмотреть сообщение
Я это сразу предлагал...
Я помню

Цитата Сообщение от Andrey-MSK Посмотреть сообщение
Всё это в БД запихать вообще вопросов не возникнет... 5 - 6 таблиц с разными наборами и в них всё что нужно для всех типоразмеров. Называется Сортамент.
Тут пока главный вопрос как редактировать информацию о каждой детали. Также нужно понять как применять формулу, показывать детали на UI в двух гридах и иметь возможность сохранять информацию в файл и считывать её. В случае редактора я уже начинаю думать что можно будет обойтись одним UserControl-ом. Делаем интерфейс редактировать все возможные свойства. Для конкретной детали скрываем ненужные.
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
08.12.2023, 22:02  [ТС]
OwenGlendower,
Цитата Сообщение от OwenGlendower Посмотреть сообщение
1) У вас детали делятся на две группы. По какому признаку это происходит? Здесь на скриншоте написано про "плоские" и "объемные" фигуры.
это я просто написал тогда чтобы, просто показать какие-то две группы... вообще вторая группа это группа где детали не имеют таких характеристик как толщина металла, и площадь поверхности (металла). Просто есть детали которые относятся к первой группе, есть которые ко второй.

Цитата Сообщение от OwenGlendower Посмотреть сообщение
Вот тут на скриншоте написано про "2 картинки". Что это за картинки?
это не 2 картинки ... это я показывал шаги (это был второй шаг), для каждого элемента должна быть одна свой картинка

Цитата Сообщение от OwenGlendower Посмотреть сообщение
3) Соединение каким образом задается? В UI я имею в виду. В редакторе (номер 2 на скриншоте).
недопонял вопроса
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18357 / 14287 / 5370
Регистрация: 17.03.2014
Сообщений: 28,967
Записей в блоге: 1
08.12.2023, 22:26
Цитата Сообщение от xamelione25 Посмотреть сообщение
Просто есть детали которые относятся к первой группе, есть которые ко второй.
Как вы определяете (или планируете определять) принадлежность к группе на этапе исполнения?

Цитата Сообщение от xamelione25 Посмотреть сообщение
для каждого элемента должна быть одна свой картинка
Окей.

Цитата Сообщение от xamelione25 Посмотреть сообщение
недопонял вопроса
У детали есть свойства которые можно задать в редакторе. Соединение одно из этих свойств? Если нет, то где в UI задается это значение?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18357 / 14287 / 5370
Регистрация: 17.03.2014
Сообщений: 28,967
Записей в блоге: 1
12.12.2023, 20:08
xamelione25, я не просто так задаю эти вопросы. Ответы помогут предложить наилучшее решение. При этом возможные решение уже вам были предложены - чтение атрибутов через рефлексию или чтение констант тоже через рефлексию. Оба решения вы проигнорировали. Не говоря уже о идее с базой данных. Если это потому что вам непонятно как их применить в своем коде, то так и скажите. И - еще раз - ответьте пожалуйста на вопросы которые я задал выше.
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
12.12.2023, 23:34  [ТС]
OwenGlendower, OwenGlendower, OwenGlendower,
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Как вы определяете (или планируете определять) принадлежность к группе на этапе исполнения?
я просто планировал в файле у каждой детали заложить параметр (к примеру group=1 & group=2)

Цитата Сообщение от OwenGlendower Посмотреть сообщение
Соединение одно из этих свойств?
ну там характеристику соединения пользователь должен будет вводит на этапе добавления характеристик детали в datagridview и в последующем добавлении в БД.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18357 / 14287 / 5370
Регистрация: 17.03.2014
Сообщений: 28,967
Записей в блоге: 1
13.12.2023, 00:04
Цитата Сообщение от xamelione25 Посмотреть сообщение
я просто планировал в файле у каждой детали заложить параметр (к примеру group=1 & group=2)
Для этого не нужно читать *.cs файлы. Раз вы используете БД, то правильнее хранить нужный признак в таблице с номенклатурой деталей.

Цитата Сообщение от xamelione25 Посмотреть сообщение
ну там характеристику соединения пользователь должен будет вводит на этапе добавления характеристик детали в datagridview и в последующем добавлении в БД.
Какую БД вы используете?
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
13.12.2023, 00:36  [ТС]
OwenGlendower, Какую БД вы используете?
Я базу данных для списка деталей и не планировал делать! ... Я базу данных SQL планировал делать вообще ТОЛЬКО для хранения данных вводимых и сохраняемых пользователем ...

А по-поводу того что вы говорили про exe-шник и файлы деталей отдельно ... Я вообще хотел просто собрать все в один exe файл ... Пусть он будет громоздким, но общим одним файлом. Я и не планировал чтобы у меня файлы порознь друг от друга висели.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18357 / 14287 / 5370
Регистрация: 17.03.2014
Сообщений: 28,967
Записей в блоге: 1
13.12.2023, 12:48
Цитата Сообщение от xamelione25 Посмотреть сообщение
Я базу данных для списка деталей и не планировал делать!
Скорее всего зря. Единая БД скорее упростит задачу чем усложнит.

Цитата Сообщение от xamelione25 Посмотреть сообщение
А по-поводу того что вы говорили про exe-шник и файлы деталей отдельно ... Я вообще хотел просто собрать все в один exe файл ... Пусть он будет громоздким, но общим одним файлом. Я и не планировал чтобы у меня файлы порознь друг от друга висели.
Это не важно. Необходимость иметь исходный код приложения на этапе исполнения это глупость. Храните данные в БД.

Цитата Сообщение от xamelione25 Посмотреть сообщение
Я базу данных SQL планировал делать
Вы так и не ответили какую именно БД.
1
 Аватар для Andrey-MSK
3386 / 2272 / 388
Регистрация: 14.08.2018
Сообщений: 7,690
Записей в блоге: 4
13.12.2023, 13:36
xamelione25,
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Вы так и не ответили какую именно БД.
Уточню. Какая СУБД будет использоваться?
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
13.12.2023, 18:05  [ТС]
Andrey-MSK, OwenGlendower, или SQLite, или MySQL объектно-ориентированную
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18357 / 14287 / 5370
Регистрация: 17.03.2014
Сообщений: 28,967
Записей в блоге: 1
13.12.2023, 23:08
xamelione25, окей. Добавляйте. И первое что следует сделать это создать и заполнить таблицу с номенклатурой деталей.
0
 Аватар для Andrey-MSK
3386 / 2272 / 388
Регистрация: 14.08.2018
Сообщений: 7,690
Записей в блоге: 4
14.12.2023, 08:28
Цитата Сообщение от xamelione25 Посмотреть сообщение
или SQLite
FireBird будет поинтереснее - возможностей побольше.
Цитата Сообщение от xamelione25 Посмотреть сообщение
или MySQL объектно-ориентированную
Оно вам точно надо? Чем обычная реляционная не устраивает? И вместо MySQL я бы взял PostgreSQL, либо MS SQL Server Express - поддержка C# лучше...
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
14.12.2023, 13:29  [ТС]
Andrey-MSK,
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
Оно вам точно надо? Чем обычная реляционная не устраивает? И вместо MySQL я бы взял PostgreSQL, либо MS SQL Server Express - поддержка C# лучше...
Я MySQL хоть ближе знаю ... я уже на ней уже хоть что-то раньше писал ... я PostgreSQL и MS SQL Server Express вообще не знаю
0
2296 / 1612 / 400
Регистрация: 26.06.2017
Сообщений: 4,774
Записей в блоге: 1
14.12.2023, 19:55

Не по теме:

Всю тему не читал, так случайным образом окинул взглядом.


Что-то там про файлы *.cs это сразу понятно что бред. Однако есть такая модель данных EAV. Она позволяет наполнять объект любыми свойствами, но обладает большим количеством минусов в аспектах хранения данных. Может ТСу рассмотреть подход этой модели?

Добавлено через 3 часа 20 минут
Читая тему у меня сложилось стойкое ощущение, что ТС не совсем понимает принципы взаимодействия классов (их кода) и данных, которые ими описаны.
Класс (код) это некий шаблон сущности, которую класс описывает. Когда создаётся экземпляр класса (ещё говорят объект, что тоже самое что и экземпляр), вот тогда и только тогда возникает некая сущность в памяти ПК. xamelione25, поймите, что все ваши детали это не файл, а экземпляр класса (некое воплощение кода класса). У разных экземпляров одно и тоже свойство может отличаться по значению.
Если принять, что разновидностей деталей овердохрена и они могут иметь разные наборы свойств, то я бы пошёл таким путём:
а) хранение - реляционная база данных в модели EAV;
б) отображение - UserControl с динамическим построением субконтролов для свойств объекта через рефлексию (охренеть как сложно, но достижимо). Можно попробовать прикрутить PropertyGrid;
в) общее обращение внутри программы - на основе базового класса содержащего общие свойства всех деталей. Как минимум Name, Type и т.п.
г) отображение в кратком виде (например DataGridView), тоже на основе пункта В.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.12.2023, 19:55

Формирование списка в потоке
Добрый день! Есть у меня задача по формированию списка. Цель данной задачи попрактиковаться с обработкой и манипулированием списков....

Формирование списка вывода новостей
Всем привет. Я недавно начл изучать asp.net. И вот сталкнулся с проблемой, что я не могу создать страницу с выводом на ней всех новостей....

Формирование списка, в котором, если элементы заданного списка не образуют уменьшающейся последовательности
Здраствуйте , помогите Используя генератор случайных чисел, заполните список элементами целыми положительными и отрицательными...

Формирование списка с остатками от деления целых чисел из исходного списка на заданное число N
люди помогите пожалуйста!!! Формирование списка с остатками от деления целых чисел из исходного списка на заданное число N.

Формирование нового списка из четных элементов заданного списка
Здравствуйте,помогите пожалуйста. Написать программу формирования нового списка из четных элементов заданного списка


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

Или воспользуйтесь поиском по форуму:
56
Ответ Создать тему
Новые блоги и статьи
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов. Логика кажется понятной: 1. Находим ключевые слова. 2. Добавляем их на. . .
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302 Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
SUNO Ai - Река Без Дна
zorxor 31.07.2026
Автор стихотворения - астрофизик Марина Катыс Ссылка на сгенерированную музыкальную композицию: https:/ / suno. com/ song/ 6f6e5464-b290-4650-be6c-44c85f8d8013 Я говорю, что Время- как вода течет. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru