0 / 0 / 0
Регистрация: 28.03.2012
Сообщений: 12

Отобразить в TextBox цену выбранного в ComboBox товара

05.04.2012, 17:39. Показов 4415. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Суть проблемы такова:
- есть база данных c таблицей tblGoods с полями GoodsID[int], GoodsName[nvarchar], GoodsPrice[float];
- есть comboBox1 в котором отображается GoodsName, то есть название товаров(ниже код)
C#
1
2
3
4
5
            private ShopDatabaseEntities sbe = new ShopDatabaseEntities();
...
            comboBox1.DataSource = pbe.tblGoods;
            comboBox1.DisplayMember = "GoodsName";
            comboBox1.ValueMember = "GoodsID";
- есть TextBox1, в котором я хочу, что бы в зависимости от выбора названия товара менялась соответственно цена в TextBox1

Всем спасибо наперед!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.04.2012, 17:39
Ответы с готовыми решениями:

Как при выборе товара в соседнем столбце отобразить его цену?
Всем привет! помогите, пж. в базе борей есть такая функция, при которой когда выбираешь товар, в соседнем столбце поставляется его цена ...

Отобразить в Label значение в зависимости от выбранного ItemIndex в ComboBox
Всем здравствуйте) Прошу помощи, пожалуйста) Имеется combobox и item прописаны вот так void __fastcall TForm9::FormShow(TObject...

Как отобразить в TextBox содержимое файла, выбранного в OpenFileDialog
вообщем такая небольшая задача....нужно по щзелчку кнопки открыть список файлов на компьютере....(тут я вроде разобрался ...делаю с помощью...

14
 Аватар для Дмитрий3241
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
Записей в блоге: 6
05.04.2012, 17:55
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void change_cash(string s)
{
    string var = s;
    switch (var)
    {
        case "Marllboro" : textBox1.Text = "60 руб.";
            break;
        case "Winston" : textBox1.Text = "47 руб.";
            break;
    }
}
 
private void comboBox1_SelectedIndexChanged( object sender, EventArgs e )
{
    change_cash( comboBox1.Text );
}
Или вот так, минуя функцию.

C#
1
2
3
4
5
6
7
8
9
10
private void comboBox1_SelectedIndexChanged( object sender, EventArgs e )
{
    switch ( comboBox1.Text )
    {
        case "Marllboro": textBox1.Text = "60 руб.";
            break;
        case "Winston": textBox1.Text = "47 руб.";
            break;
    }
}
0
0 / 0 / 0
Регистрация: 28.03.2012
Сообщений: 12
05.04.2012, 17:57  [ТС]
Пример хороший, но названия моих товар записаны в бд, и если я потом добавлю новый товар или же удалю уже существующий, то мне нужно будет и изменить код свичя. Еще вариант?
0
32 / 32 / 1
Регистрация: 16.07.2009
Сообщений: 85
05.04.2012, 19:16
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public string[,] Dbase = new string[,]
                                       {
                                           {"0","1","2"},
                                           {"1","11","22"},
                                           {"2","111","222"},
                                           {"3","1111","2222"},
                                           {"4","11111","22222"},
                                           {"5","111111","222222"},
                                           {"6","1111111","2222222"}
 
 
                                       };
        public Form1()
        {
            InitializeComponent();
        }
 
        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            int SelecIndex = comboBox1.SelectedIndex;
            textBox4.Text = Dbase[SelecIndex, 0] + " " + Dbase[SelecIndex, 1] + " " + Dbase[SelecIndex, 2];
0
1057 / 864 / 195
Регистрация: 31.03.2010
Сообщений: 2,521
05.04.2012, 19:23
C#
1
2
3
4
private void comboBox1_SelectedIndexChanged( object sender, EventArgs e )
{
    TextBox1.Text = (comboBox1 as DataViewRow).Row["GoodsPrice].ToString("f");
}
писал по памяти, но суть ясна.. разберешься, думаю

или, как вариант, через BindingSource пример на msdn
0
0 / 0 / 0
Регистрация: 28.03.2012
Сообщений: 12
05.04.2012, 21:58  [ТС]
Получилось что вроде этого:
C#
1
2
3
4
5
  private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            DataRow current = ((DataRowView)comboBox1.SelectedItem).Row;
            textBox1.Text = current["GoodsPrice"].ToString();
        }
но выдает ошибку: Unable to cast object of type 'ShopProject.TblGood' to type 'System.Data.DataRowView'.

Добавлено через 6 минут
Цитата Сообщение от Learx Посмотреть сообщение
C#
1
2
3
4
private void comboBox1_SelectedIndexChanged( object sender, EventArgs e )
{
    TextBox1.Text = (comboBox1 as DataViewRow).Row["GoodsPrice].ToString("f");
}
писал по памяти, но суть ясна.. разберешься, думаю

или, как вариант, через BindingSource пример на msdn
А тут выдает такую ошибку: Cannot convert type 'System.Windows.Forms.ComboBox' to 'System.Data.DataRowView' via a reference conversion, boxing conversion, unboxing conversion, wrapping conversion, or null type conversion
0
 Аватар для Монфрид
1245 / 1055 / 293
Регистрация: 07.03.2012
Сообщений: 3,246
05.04.2012, 23:54
C#
1
textBox1.Text=pbe.tblGoods.Select("GoodsId="+comboBox1.Selectedvalue.ToString())[0][2].ToString();
может так?
0
0 / 0 / 0
Регистрация: 28.03.2012
Сообщений: 12
06.04.2012, 00:40  [ТС]
Монфрид, Выдает такую ошибку:
Cannot apply indexing with [] to an expression of type System.Data.Objects.ObjectQuery<System.D ata.Common.DbDataRecord>'
Помогите завтра лабу на 17:00 по укр здавать
0
 Аватар для Монфрид
1245 / 1055 / 293
Регистрация: 07.03.2012
Сообщений: 3,246
06.04.2012, 09:22
скинь сюда проект, так быстрее выйдет
0
0 / 0 / 0
Регистрация: 28.03.2012
Сообщений: 12
06.04.2012, 10:25  [ТС]
Скинул ту часть проекта в которой есть данная проблема
Вложения
Тип файла: rar ShopProject.rar (2.23 Мб, 23 просмотров)
0
 Аватар для _katon_
414 / 265 / 25
Регистрация: 03.10.2011
Сообщений: 1,094
06.04.2012, 10:39
Вот как в msdn
C#
1
2
3
4
5
6
7
8
    DataTable table = DataSet1.Tables["Orders"];
    // Presuming the DataTable has a column named Date.
    string expression;
    expression = "Date > #1/1/00#";
    DataRow[] foundRows;
 
    // Use the Select method to find all rows matching the filter.
    foundRows = table.Select(expression);
http://msdn.microsoft.com/ru-r... 4aw50.aspx
0
49 / 49 / 7
Регистрация: 03.12.2010
Сообщений: 229
06.04.2012, 11:07
Вот твой изменённый мною проект
ShopProject1.rar
Читай комментарии в Form1.cs
1
49 / 49 / 7
Регистрация: 03.12.2010
Сообщений: 229
06.04.2012, 11:33
Ещё нужно добавить строку
C#
1
            comboBox1.DisplayMember="GoodsName";
Извините, не заметил
0
0 / 0 / 0
Регистрация: 28.03.2012
Сообщений: 12
06.04.2012, 11:48  [ТС]
Всем спасибо проблема решена
0
1057 / 864 / 195
Регистрация: 31.03.2010
Сообщений: 2,521
06.04.2012, 12:34
C#
1
2
3
4
5
 
private void comboBox1_SelectedIndexChanged( object sender, EventArgs e )
{
    TextBox1.Text = (comboBox1.SelectedItem as DataRowView).Row["GoodsPrice].ToString("f");
}
вот так должно сработать
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.04.2012, 12:34
Помогаю со студенческими работами здесь

Массив записей. Структура: наименование товара, его количество, цену за единицу товара и общую стоимость данного товара
Пожалуйста помогите с задачкой на массивы для экзамена.. 1.Разработать программу на ЯП Pascal, в которой происходит заполнение массива...

Вывод результата в textBox в зависимости от выбранного значения в comboBox
Всем доброго времени суток! У меня есть 2 связанные таблицы, 1 таблице (id, name_avto, id_driver, status(занят или свободен авто), во...

Создать отчет в котором отобразить название товара из таблицы склад, количество на складе, цену заказчика и количество заказов.
Есть задание создать отчет в котором отобразить название товара из таблицы склад, количество на складе, цену заказчика и количество...

Excel VBA: при выборе одно из пунктов combobox в textbox выводить цену, и картинку
Здравствуйте. У меня такой вопрос. Как сделать что бы при выборе одно из пунктов combo box в text box выводилась цена и на. List box....

Найти равновесную цену; функцию p(t); цену товара и выручку через пять лет
Известно, что на рынке одного товара функции спроса и предложения товара по цене p линейные и задаются следующими формулами: q=800-10p,...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru