每当我在列表框中选择一个项目时,我都试图填充我的文本框,但是我遇到了这个错误

本文关键字:填充 我的 文本 错误 遇到 项目 列表 选择 一个 | 更新日期: 2023-09-27 18:04:56

我一直得到错误

多部分标识符"System.Data. net"。无法找到DataRowView。

有这些代码

private void lbProduct_SelectedIndexChanged(object sender, EventArgs e)
    {
        try
        {
            dtbProduct = dc.getDataTable(string.Format("SELECT P.product_id, P.product_name, P.product_price, T.[type_name], T.[type_fee], T.[type_id] FROM Product P INNER JOIN [Product Type] T ON P.[type_id] = T.[type_id] WHERE product_name = {0}", lbProduct.SelectedItem.ToString()));
            for (int i = 0; i < dtbProduct.Rows.Count; i++)
            {
                //P.TypeName = dtbProduct.Rows[i]["type_name"].ToString();
                txtPrice.Text = dtbProduct.Rows[i]["product_price"].ToString();
                txtProductName.Text = dtbProduct.Rows[i]["product_name"].ToString();
            }
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
    }

.

public DataTable getDataTable(string query)
    {
        con.Open();
        DataTable dt = new DataTable();
        SqlDataAdapter sda = new SqlDataAdapter(query, con);
        sda.Fill(dt);
        con.Close();
        return dt;
    }

每当我在列表框中选择一个项目时,我都试图填充我的文本框,但是我遇到了这个错误

您的dtbProduct。行是空的,它爆炸当你试图迭代它…对空对象没有计数。无论如何,我相当肯定,至少有一个问题是,您应该使用bProduct。SelectedValue代替bProduct.SelectedItem.