Другие языки программирования и технологии

Нужна помощь в C#

У меня есть Услуга (label) и рядом с ней comboBox, и есть Общая стоимость (label) и рядом с ней textBox.
Как сделать, чтобы выбирая в comboBox услугу, мне в textbox рядом с Общей стоимостью, автоматически выводило цену выбранной мною услуги?
Создайте класс Service, в котором определите свойства и поля соответственно:
Title - title, типа String - для названия услуги
Price - price, типа Decimal - для цены
IsIncluded - isIncluded, типа Boolean - для включения/исключения услуги в список оказываемых услуг
Это минимум!
Надеюсь на то, что как определить геттеры и сеттеры вам не составит труда.

Следующим шагом создайте класс для услуг Services, а в нём поле список List services
Наследовать или агрегировать - решать вам...
Где хранить данные: в базе данных, XML-файле, бинарном файле, текстовом файле, опять же решать вам.
Загружая форму инициализируйте список данными, а коллекцию ComboBox.Items (есть такое свойство https://msdn.microsoft.com/ru-ru/library/system.windows.forms.combobox.items ) comboBox полями title из списка в порядке следования.

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

Тут у меня возникает вопрос... Если стоимость (правильнее - цена, я у Маркса читал и вы прочитайте) у вас общая, то подразумевается сумма. Тогда в интерфейсе пользователя поле sum в конструкторе инициализируйте нулём. А в обработчике comboBox напишите sum += services.Item.price;
ДА
Дамир Ахмадиев
92 386
Лучший ответ
Щяс запущу VS, дам пример. Через минут 10 т. е. хД чекни страничку потом, обновлю сообщение.
Патимат Магомедова В общем у меня пример с дропдаунлистом и лейблами, но прицип такой же. У тебя есть комбобокс с выбором листайтемов (?), каждому лист айтему можно пиписать Value="1". 2. 3. 4 итд. Это и будет идентификация каждой строки,
- Создаешь функцию ComboBoxID_SelectedIndexChanged
и дальше с помощью обычных ифелсе можешь писать что угодно к примеру
if (ComboBoxID.SelectedValue == "1") {
то....
TextBoxID.Text = ""; в зависимости от типа, можно и в инт. Но могут быть всегда проблемы с конвертацией.
}

Если что пиши, попробуем разобарться, я просто с асп. нет делал, но по сути различий должно быть не много )
самый лучший способ не через if-else-if, а через словарь. System.Collections.Generic.Dictionary. Например, помещаешь в класс формы этот словарь:
private static Dictionary(string, double) Costs = new Dictionary(string, double) {
{ "Яблоки", 72.44 },
{ "Молоко", 48 } };
А потом в событии делаешь вот так:
TextBox.Text = Costs[ComboBox.SelectedValue]; // элементы списка должны совпадать с элементами словаря, иначе может вылезти ошибка
Вместо круглых скобок у dictionary надо угловые (майл не дает их ставить в ответе)
Ербол Абылов
Ербол Абылов
5 405