我在datagridview中的当前单元格中选择的预览图像

时间:2014-03-03 11:44:16

标签: c# datagridview

这是我的代码:

private void getit()
{
    if (dataGridView1.CurrentRow.Cells[4].Value.ToString().Trim() == "")
    {
        OpenFileDialog od = new OpenFileDialog();
        od.ShowDialog();
        if (od.FileName.ToString() != "")
        {
            label2.Text = od.FileName.ToString();
            //pictureBox1.Image = Image.FromFile(label2.Text);

            dataGridView1.CurrentRow.Cells[1].Value = null;
            dataGridView1.CurrentRow.Cells[1].Value = Image.FromFile(label2.Text);

            dataGridView1.CurrentRow.Cells[4].Value = "1";
        }
        else
        {
            DialogResult dialogResult = MessageBox.Show("", "", MessageBoxButtons.YesNo);
            if (dialogResult == DialogResult.Yes)
            {
                pictureBox1.Image = pictureBox4.Image;
                label2.Text = "";
            }
        }
        dataGridView1.Refresh();
    }
}

enter image description here

我需要加载我刚刚点击的单元格中选择的图像,它适用于图片框,但即使我制作 dataGridView1.CurrentRow.Cells[1].Value = pictureBox1.Image没有真正发生!

1 个答案:

答案 0 :(得分:-1)

不确定可能是什么问题(DataGridView的列类型错误?)。这里有一个小样本代码,应该可以正常工作。

dataGridView1.Columns.Add(new DataGridViewColumn(new DataGridViewImageCell())); //Adding an image-type column
dataGridView1.Rows.Add(); //Adding row 0

OpenFileDialog od = new OpenFileDialog();
od.ShowDialog();
if (od.FileName != "")
{
    label2.Text = od.FileName;
    dataGridView1[0, 0].Value = Image.FromFile(label2.Text);
}