C# 如何在asp.net c中在gridview的列中显示文本和图像#

C# 如何在asp.net c中在gridview的列中显示文本和图像#,c#,asp.net,C#,Asp.net,从数据库中,如果存在简单文本,则文本应显示在gridview中,如果在表中,文本是图像文件的名称,则图像应显示 范例 id text ---- ------- 1 hello 2 hi 3 imagename.jpg 现在,我想在gridview的[0]列中显示hello和hi,并在同一列中显示image(imagename.jpg),即[0]列。。。 请帮助您可以拥有类型为DataGridV

从数据库中,如果存在简单文本,则文本应显示在gridview中,如果在表中,文本是图像文件的名称,则图像应显示

范例

id           text
----         -------
1            hello
2            hi
3            imagename.jpg
现在,我想在gridview的[0]列中显示hello和hi,并在同一列中显示image(imagename.jpg),即[0]列。。。
请帮助

您可以拥有类型为
DataGridViewImageColumn
的列,并为图像提供文本

DataGridViewImageColumn column = new DataGridViewImageColumn();
column.HeaderText = "Image Name";

受保护的无效页面加载(对象发送方、事件参数e)
{
grdImages.DataSource=您的数据源;
grdImages.DataBind();
}
我已经这样做了

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
     if (e.Row.RowType == DataControlRowType.DataRow)
     {
         string img = ((Image)e.Row.FindControl("Image1")).ImageUrl;
         string []ext=img.Split('.');
         if (ext.Length == 1)
         {
             ((Image)e.Row.FindControl("Image1")).Visible = false;
         }
         else
         {
             ((Image)e.Row.FindControl("Image1")).Visible = true;
         }
      }
     BindGrid();
}

@Gopeshharma…是的,我知道这一点…但在这个链接中只有图像在那里…我希望文本和图像都在一列中如果你希望它们都在一列中创建一个ItemTemplate,一个简单的Google搜索将返回足够多的结果如果你以前从未这样做过通过此代码,我将在一列中获取名称,在另一列中获取图像,但我不想那样。。。。如果在表格中,如果网格列中有简单文本,则应显示文本,但如果是文件名,则应显示图像display@vaishali检查我的最新答案。使用NullDisplayText属性在没有图像url时显示文本。
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
     if (e.Row.RowType == DataControlRowType.DataRow)
     {
         string img = ((Image)e.Row.FindControl("Image1")).ImageUrl;
         string []ext=img.Split('.');
         if (ext.Length == 1)
         {
             ((Image)e.Row.FindControl("Image1")).Visible = false;
         }
         else
         {
             ((Image)e.Row.FindControl("Image1")).Visible = true;
         }
      }
     BindGrid();
}