C# 基于另一列中的值在Datagridview中显示图像
我有一个数据网格视图,它从数据表中加载值,有三列。 Col0是图像(如果有或没有文件附件),Col1是主题,Col2是附件文件名(如果没有附件,则为空字符串) 我想将col0链接到col2,但是如果col2中的单元格是空字符串,我在col0中不会得到图像,否则我会得到已经保存的图像 这是我目前的代码:C# 基于另一列中的值在Datagridview中显示图像,c#,datagridview,C#,Datagridview,我有一个数据网格视图,它从数据表中加载值,有三列。 Col0是图像(如果有或没有文件附件),Col1是主题,Col2是附件文件名(如果没有附件,则为空字符串) 我想将col0链接到col2,但是如果col2中的单元格是空字符串,我在col0中不会得到图像,否则我会得到已经保存的图像 这是我目前的代码: { string sqlQueryStr = "SELECT Main_Subject,Main_FileName FROM dbo.Main WHERE
{
string sqlQueryStr = "SELECT Main_Subject,Main_FileName FROM dbo.Main WHERE Main_Subject like @tb_MainSubject ";
SqlCommand cmd = new SqlCommand(sqlQueryStr, sc);
cmd.Parameters.AddWithValue("tb_MainSubject", "%" + tb_MainSubject.Text + "%");
sc.Open();
cmd.ExecuteNonQuery();
sc.Close();
using (SqlDataAdapter myAdapter = new SqlDataAdapter(cmd))
{
myAdapter.Fill(myTable);
// Render data onto the screen
dgv_Result.DataSource = myTable;
}
this.dgv_Result.Columns[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
this.dgv_Result.Columns[1].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
this.dgv_Result.Columns[2].Visible = false;
}
谢谢foreach(dgv_Result.Rows中的DataGridViewRow行){if(row.Cells[2].Value.ToString().Equals(“”)row.Cells[0].Value=“no”else row.Cells[0].Value=“yes”}这适用于文本列,如何设置图像的值?单元格[0]是否包含asp图像标记?如果是这样,您可以使用类似于Image ctl=Cells[0]的内容来访问它;ctl.ImageSource=“”;这一切都来自记忆,但希望它能指引你正确的方向。我已经找到了一种方法,但问题是我找不到如何指定导入到库中的图像的路径。我不确定你的意思。你不能像ctl.ImageUrl=“~/images/myimage.jpg”这样做吗;(~应该告诉它从站点的根开始)