Member 14054067 Ответов: 1

C# как создать инвентарь в VB и изменить его с помощью отдельного окна


Я дошел до того момента в своем приложении, когда мне нужно создать инвентарный лист в моей форме windows в visual basic и связать его с моей формой заказа, а также позволить форме заказа убедиться, что запасов достаточно для создания сэндвича, а также изменять инвентарь каждый раз, когда используются ингредиенты.

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

Что я уже пробовал:

foreach (var флажок в ctrl.Управления.OfType<checkbox>())
{
Итого = флажок.Проверен
? (Итого + Конвертация .Метод todouble(флажок .Тег))
: Весь;
}
за исключением того, что я не понимаю, как связать суммы запасов на странице запасов с флажками, которые у меня есть . Скажем, у меня есть флажок, и он называется ростбиф. и я ставлю галочку в окошке. теперь я должен получить текст из флажка и сравнить его с переменной для инвентаря в другом классе.

отбор = флажок.Текст;
по каждому элементу (ВАР продукт в inventoryGroupBox)
{
if ( item == selection)
if ( selection >= item)
Итого += цена;
}

Я искал и искал в интернете точку прыжка, но безрезультатно. Если бы только меня можно было подтолкнуть в правильном направлении. Я застрял на этом уже четыре дня!

Я надеюсь, что это имеет смысл. Я нахожусь в тупике, и мне кажется, что я не могу ввести правильную вещь в google, чтобы даже найти способ добавить страницу в форму. Я иду в правильном направлении?
Спасибо

1 Ответов

Рейтинг:
11

OriginalGriff

Идея с ярлыками, вероятно, не очень хороша.

С другой стороны, база данных ...

Остановитесь и подумайте о том, что вы пытаетесь сделать: это магазин сэндвичей, да?
Таким образом, ваш инвентарь состоит из 10 порций помидоров, 6 порций салата, 1 порции огурца, 3 сыра, 12 ветчины и 100 ломтиков хлеба.
Я захожу и заказываю сэндвич с ветчиной. Вы используете 1 помидор, 1 Салат, 1 огурец, 1 Ветчину, два ломтика хлеба (а я жалуюсь на отсутствие майонеза)

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

Делать это с этикетками-это Пита по двум причинам:
1) метки не хранят числа, они хранят текст - поэтому каждый раз, когда вы хотите проверить или изменить его, вы должны преобразовать его в число, а затем вернуться к тексту, когда вы закончите.
2) метки не являются постоянными - они возвращаются к "стартовому значению" каждый раз, когда вы запускаете приложение.

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

Я не собираюсь пытаться объяснить, как использовать БД - черт возьми, на эту тему написаны целые книги! - но быстрый поиск в google названия любой установленной вами БД (Access, SQL Server, SqlLite, MySql, Oracle-все это возможно здесь) и "учебник по C#" найдут для вас массу информации для начинающих, чтобы вы могли начать работу.
Получайте удовольствие!


Member 14054067

Большое спасибо. Я отвергаю идею базы данных. Это тот толчок, который мне был нужен. :)

OriginalGriff

Всегда пожалуйста!