我试图点击datagridview中的图像,然后将其图像/文件名写入文本框,以便我可以从其他地方访问它。
首先,我尝试一个小应用程序,以确保我可以完成所有工作。对话框包含dataviewgrid,我将位图放入其中,如下所示:
public ChooseFormat()
{
InitializeComponent();
dataGridView1[0,0].Value = new Bitmap(@"C:\a\eggs\grid_app\grid_app\bin\Debug\graphics\1L5HQ60.bmp");
}
现在我点击图片,但我尝试过的所有内容都无法获取文件名。我得到的最接近的是下面但是返回" System.Drawing.Bitmap"而不是文件名。我相信这只是一个调整,以使其工作,但我已经尝试了一些我知道的事情,没有任何工作。
void DataGridView1CellContentClick(object sender, DataGridViewCellEventArgs e)
{
txtbx_choice.Text = dataGridView1[0,0].Value.ToString();
}
答案 0 :(得分:3)
在调试器中钻取单元格的数据不会显示有关其源代码的任何信息。也许我忽视了一些事情......
一个简单的解决方案是将文件名存储在单元格的Tag属性中:
string fileName = @"C:\a\eggs\grid_app\grid_app\bin\Debug\graphics\1L5HQ60.bmp";
dataGridView1[0,0].Value = new Bitmap(fileName );
dataGridView1[0,0].Tag = fileName ;
现在您可以随时访问它:
string displayedFile = dataGridView1[0, someRow].Tag.ToString();
答案 1 :(得分:0)
我在同一张表格上放了一个相框,这就是我在图片框中显示ImageColumn的数据(图片)
pictureBox1.Image = (Image)dataGridView1[0, 0].Value;