在c#中添加图像到datagridviewimagecoluml

本文关键字:datagridviewimagecoluml 图像 添加 | 更新日期: 2023-09-27 17:53:29

我正试图通过代码甚至在设计时为datagridviewimagecoluml添加图像

总是出现一个默认的c#图像,'x'表示没有图像

我试过这个代码从微软

    Icon treeIcon = new Icon(this.GetType(), "tree.ico");
DataGridViewImageColumn iconColumn = new DataGridViewImageColumn();
iconColumn.Image = treeIcon.ToBitmap();
iconColumn.Name = "Tree";
iconColumn.HeaderText = "Nice tree";
dataGridView1.Columns.Insert(2, iconColumn);

。然而,我在资源中添加了一个。ico -也尝试了文件路径-一个异常结果说在表单类

中没有找到tree.ico

我用图像代替了图标

            ataGridViewImageColumn img = new DataGridViewImageColumn();
            img.ValuesAreIcons = true;
            Image image = Image.FromFile("C:/Users/../Desktop/app_edit.png");
            img.Image = image;
            showprocessed_dataGridView.Columns.Add(img);
            img.HeaderText = "Image";
            img.Name = "img";

这导致默认的"无图像"显示在atagridviewimagecolum列这个问题的解决方案是什么?是问题与图像格式或什么!!

在c#中添加图像到datagridviewimagecoluml

来自Microsoft的代码看起来像是在更改列标题中的图像。它不会添加包含图像的行。要做到这一点,您需要向绑定到DataGridView的数据源添加一条记录,该数据源包含适当的图像数据,或者手动创建一个DataGridViewRow,并将其添加到DataGridView

使用RowDataBound事件将图像绑定到网格,

protected void gridView1_RowDataBound(Object sender, GridViewRowEventArgs e)
{
 if(e.Row.RowType == DataControlRowType.DataRow)
 {
  Image imgGridview = (Image) e.Row.FindControl("imgGrv");
  imgGridview.ImageUrl = "images/test.gif";
 }
}

这可能对你有帮助

 DataGridViewImageColumn delCol = new DataGridViewImageColumn();//create image column
                delCol.ImageLayout = DataGridViewImageCellLayout.Zoom;//column properties
                int icIndex = DGV_showTable.Columns.Add(delCol);//add column to DGV
                DGV_showTable.Columns[icIndex].Name = "Delete";//set name for column
                Image image = Image.FromFile(@"C:'Users'mohab.MOHAMMED'Desktop'delete.png");//load img png
                foreach (DataGridViewRow row in DGV_showTable.Rows)//foreach on all rows
                {
                    row.Cells["Delete"].Value = image;//loadimage to dgv on spicific column
                }

您必须在编写它的第二个代码上将img.ValuesAreIconstrue更改为false。当我使用你的代码来解决这个问题时,它就发生在我身上了。

相关文章:
  • 没有找到相关文章