Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.03.2019, 10:46   #1
SynsWor
 
Регистрация: 05.04.2017
Сообщений: 7
По умолчанию Вывод данных в label на основе выбора значений из combobox

Всем привет! Возникла такая проблема на WinForm c#:
У меня есть БД SQL, в которой есть столбцы "Модель" и "Количество". Данные из столбца "Модель" я передаю в ComboBox таким образом:
Код:
public void fillcombobox2()
        {
            SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\SynsWor\Desktop\Диплом\BD\SredstvaDB.mdf;Integrated Security=True;Connect Timeout=30");
            string sql = "SELECT * FROM tbl_Sredstva";
            SqlCommand cmd = new SqlCommand(sql, con);
            SqlDataReader myreader;
            try
            {
                con.Open();
                myreader = cmd.ExecuteReader();
                while (myreader.Read())
                {
                    string ssname = myreader.GetString(4);
                    comboBox5.Items.Add(ssname);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Мне необходимо, чтобы при выборе определенной модели у меня в Label отображалось количество по данной модели (из столбца количество).
Я сделал таким образом, но у меня возникает ошибка

Код:
private void comboBox5_SelectedIndexChanged(object sender, EventArgs e)
        {
            SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\SynsWor\Desktop\Диплом\BD\SredstvaDB.mdf;Integrated Security=True;Connect Timeout=30");
            con.Open();
            string sql = "SELECT Model,Col FROM tbl_Sredstva";
            SqlCommand cmd = new SqlCommand(sql, con);
            DataTable dt = new DataTable();
            dt.Load(cmd.ExecuteReader());
            comboBox5.DataSource = dt;
            comboBox5.DisplayMember = "Model";
            comboBox5.ValueMember = "Model";//обычно здесь указывают ID записи

            //получение выбранной в comboBox записи
            DataRow row = (DataRow)comboBox5.SelectedItem;

            label1.Text = row["Col"].ToString();
        }
Ошибка в строке
Код:
DataRow row = (DataRow)comboBox5.SelectedItem;
Вот эта ошибка: Исключение типа "System.InvalidCastException" возникло в UchetTechnicheskihIRashodnihSredstd .exe, но не было обработано в коде пользователя

Дополнительные сведения: Не удалось привести тип объекта "System.Data.DataRowView" к типу "System.Data.DataRow".
SynsWor вне форума Ответить с цитированием
Старый 16.03.2019, 21:37   #2
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

так он русским языком написал, что хочет такую строку:
Код:
DataRowView row = (DataRowView)comboBox5.SelectedItem;
pu4koff вне форума Ответить с цитированием
Старый 17.03.2019, 06:46   #3
SynsWor
 
Регистрация: 05.04.2017
Сообщений: 7
По умолчанию

Цитата:
Сообщение от pu4koff Посмотреть сообщение
так он русским языком написал, что хочет такую строку:
Код:
DataRowView row = (DataRowView)comboBox5.SelectedItem;
Да, я так пробовал, но в Combobox, таким образом, выбирается только одно значение и в label выводится значение по его количеству. Почему-то я могу выбрать только значение (HP 3220 в combobox), остальные не выбираются... Какое бы я значение не выбрал, всё равно выберется только значение HP3220. В чем может быть проблема? Подскажите пожалуйста...

Последний раз редактировалось SynsWor; 17.03.2019 в 09:09.
SynsWor вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод данных в label на основе выбора значений из combobox SynsWor Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 0 15.03.2019 07:39
Проверка заполнения TextBox и ComboBox и вывод сообщений в Label rustorkan C# (си шарп) 1 10.07.2018 06:33
Вывод данных из ячейки в TextBox или Label (VBA) Turistovik Помощь студентам 0 27.10.2010 04:41
Вывод отчёта на основе данных формы katrina-n Microsoft Office Access 6 30.11.2009 06:58
MS Access вывод отчёта на основе данных формы katrina-n Помощь студентам 0 29.11.2009 18:40