【发布时间】:2015-10-21 06:32:57
【问题描述】:
所以我在 sql server 上的 BikeStore 数据库中有一个名为 Bicycle 的表,由以下列组成: BID、BName、描述、BType、品牌、产地、价格、库存、BImage
只需单击 datagridview 上的单元格,即可将所有文本框和一个组合框与我来自 sql server 的数据成功绑定。下面是代码:
private void dg1_CellClick(object sender, DataGridViewCellEventArgs e)
{
bidTxt.Text = dg1.SelectedRows[0].Cells[0].Value.ToString();
bnameTxt.Text = dg1.SelectedRows[0].Cells[1].Value.ToString();
bdescrichTxt.Text = dg1.SelectedRows[0].Cells[2].Value.ToString();
typeCB.Text = dg1.SelectedRows[0].Cells[3].Value.ToString();
brandTxt.Text = dg1.SelectedRows[0].Cells[4].Value.ToString();
originTxt.Text = dg1.SelectedRows[0].Cells[5].Value.ToString();
priceTxt.Text = dg1.SelectedRows[0].Cells[6].Value.ToString();
stockTxt.Text = dg1.SelectedRows[0].Cells[7].Value.ToString();
但每次我尝试加载图像时它仍然会产生错误。代码如下:
sqlconn.Open();
SqlCommand cmd = new SqlCommand("SELECT BImage FROM Bicycle WHERE BID = " + dg1.SelectedRows[0].Cells[0].Value + "", sqlconn);
da.SelectCommand = cmd;
DataSet ds = new DataSet();
byte[] mydata = new byte[0];
da.Fill(ds, "Bicycle");
DataRow myrow;
myrow = ds.Tables["Bicycle"].Rows[8];
mydata = (byte[])myrow["BImage"];
MemoryStream stream = new MemoryStream(mydata);
BikePic.Image = Image.FromStream(stream);
sqlconn.Close();
}
我做错了什么?
我是新手。
【问题讨论】:
-
究竟是什么错误?在哪条线上?
-
SqlException 未处理:da.Fill(ds, "Bicycle") 上的 B001 列无效;
-
谢谢!问题解决了。
标签: c# sql-server visual-studio datagridview binding