我正在處理一個應用程序,其中5個圖像保存在數據庫中的單個id上。現在我想在調用這些圖像的時候在datagrigview中檢索這些圖像。我的下面的代碼與picturebox一起工作良好,但是我希望在SQl服務器數據庫的datagridview中包含多個包含相同pincode的圖像。如何使用C#從SQL數據庫中的DataGridView中插入圖像
try
{
string sql = "Select IMAGE from UserInput where PINCODE = '" + txt_LPin.Text + "'";
if (conn.State != ConnectionState.Open)
conn.Open();
cmd = new SqlCommand(sql, conn);
SqlDataReader reader = cmd.ExecuteReader();
reader.Read();
if (reader.HasRows)
{
//txt_LName.Text = reader[0].ToString();
byte[] img = (byte[])(reader[1]);
if (img == null)
pb_get1.Image = null;
else
{
MemoryStream ms = new MemoryStream(img);
pb_get1.Image = Image.FromStream(ms);
}
}
else
{
txt_LPin.Text = "";
txt_LName.Text = "";
pb_get1.Image = null;
MessageBox.Show("This ID does not exist.");
}
conn.Close();
}
catch (Exception ex)
{
conn.Close();
MessageBox.Show(ex.Message);
}
我曾嘗試下面的代碼的dataGridView但它顯示的圖像對地方形象的十字標記這一翻譯。
SqlDataAdapter adpat = new SqlDataAdapter();
adpat.SelectCommand = new SqlCommand("select IMAGE from UserInput", conn);
DataTable table = new DataTable("UserInput");
adpat.Fill(table);
//create image column:
DataGridViewImageColumn photoColumn = new DataGridViewImageColumn();
photoColumn.DataPropertyName = "Picture";
photoColumn.Width = 200;
photoColumn.HeaderText = "Picture column";
photoColumn.ReadOnly = true;
photoColumn.ImageLayout = DataGridViewImageCellLayout.Normal;
dataGridView1.Columns.Add(photoColumn);
//bind data to dgv:
dataGridView1.DataSource = new BindingSource(table, null);
任何網格加載代碼你寫了? – andy
我編輯了這個問題的代碼嘗試datagridview。 – Sumi