在我的DataGridView里面有一个字段是现实图像的。
具体是这样的:
根据从数据库查询返回的结果,如果返回的是1,则显示图片1,如果是2,则显示图片2.这个该怎么实现?

解决方案 »

  1.   

    DataGridVIew的图片没做过 思路应该是这样的把存有1 或 2 的字段绑定给 DataGridVIew 隐藏这列  在添加一个图片列datagridview1.DataSource = ds.Table[0]; //绑定数据后
    for(int i = 0;i<datagridview1.Rows.Count;i++)
    {
       if(datagridview1.Rows[i].Cell["隐藏那列的列名"].Value.ToString() == "1")
       {
           //绑定图片1...
       }
       else
       {
          //绑定图片2
       }
    }
      

  2.   

      初次接触 DataGridview  控件 ! 有待研究 !
      

  3.   


    datagridview1.DataSource = ds.Table[0]; //绑定数据后
    for(int i = 0;i<ds.Table[0].Rows.Count;i++)
    {
       if(Convert.ToInt32(ds.Table[0].Rows[行索引][列索引]) == 1)
       {
           //绑定图片1...
       }
       else
       {
          //绑定图片2
       }
    }1楼的这样写更好吧
    这是直接绑定DataSource 的情况。
    如果是循环赋值就更简单了
      

  4.   

    代码来自http://bingning.net/VB/SOURCE/datagridview/showimageinintcolumn.html
    那里有详细的说明。using System;
     using System.ComponentModel;
     using System.Windows.Forms; /// <summary>
     ///根据单元格的值,表示适当的图标
     /// </summary>
     public class DataGridViewErrorIconColumn : DataGridViewImageColumn
     {
         public DataGridViewErrorIconColumn()
         {
             this.CellTemplate = new DataGridViewErrorIconCell();
             this.ValueType = this.CellTemplate.ValueType;
         }
     } /// <summary>
     ///根据单元格的值,表示适当的图标
     /// </summary>
     public class DataGridViewErrorIconCell : DataGridViewImageCell
     {
         public DataGridViewErrorIconCell()
         {
             this.ValueType = typeof(int);
         }     protected override object GetFormattedValue(
             object value, int rowIndex,
             ref DataGridViewCellStyle cellStyle,
             TypeConverter valueTypeConverter,
             TypeConverter formattedValueTypeConverter,
             DataGridViewDataErrorContexts context)
         {
             //值是0时表示情报、1时表示警告、2时表示错误
             switch ((int)value)
             {
                 case 1:
                     return SystemIcons.Information;
                 case 2:
                     return SystemIcons.Warning;
                 case 3:
                     return SystemIcons.Error;
                 default:
                     return null;
             }
         }
     
         public override object DefaultNewRowValue
         {
             get
             {
                 return 0;
             }
         }
     }
      

  5.   

    在你的GridView里可以放一个模版列,模版列里放一个Image控件,从数据库查询出数据在绑定到GridView之前判断是显示哪个图片。
    代码:datagridview1.DataSource = ds.Table[0]; //绑定数据后
    for(int i = 0;i<ds.Table[0].Rows.Count;i++)
    {
       if(Convert.ToInt32(ds.Table[0].Rows[行索引][列索引]) == 1)
       {
           Image.Imgurl = Url1;
       }
       else
       {
          Image.Imgurl = Url2;
       }
    }
    datagridview1.Bind();