datagridviewimagecolumn根据状态不同显示不同的图片,如何实现?比如人员的有效与无效,有效显示一种图片,无效显示一种图片。请问如何?由于第一次做winform的开发,请各位高手指教。谢谢!最后能够有实例代码。

解决方案 »

  1.   

    //gvPersonnel是DataGridView ,我这里用的是背景颜色   #region private void gvPersonnel_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)隔行显示颜色
       /// <summary>
       /// 隔行显示颜色
       /// </summary>
       /// <param name="sender"></param>
       /// <param name="e"></param>
       private void gvPersonnel_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
       {
           if (this.gvPersonnel.Rows.Count != 0)
           {
               for (int i = 0; i < this.gvPersonnel.Rows.Count; )
               {
                   //this.gvPersonnel.Rows[i].DefaultCellStyle.BackColor = System.Drawing.Color.AliceBlue;
                   //i += 2;
                   if (this.gvPersonnel.Rows[i].Cells["列字段名"].Value== "某某值")
                   {
                       this.gvPersonnel.Rows[i].DefaultCellStyle.BackColor = System.Drawing.Color.White;               }
                   else if (this.gvPersonnel.Rows[i].Cells["列字段名"].Value== "某某值")
                                 i += 1;
               }
           } 
       }
       #endregion      
      
      

  2.   


        #region private void gvPersonnel_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)设置行颜色
        /// <summary>
        /// 设置行颜色
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void gvPersonnel_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
        {
            if (this.gvPersonnel.Rows.Count != 0)
            {
                for (int i = 0; i < this.gvPersonnel.Rows.Count; )
                {
                    //this.gvPersonnel.Rows[i].DefaultCellStyle.BackColor = System.Drawing.Color.AliceBlue;
                    //i += 2;
                    if (this.gvPersonnel.Rows[i].Cells["列字段名"].Value== "某某值")
                    {
                        this.gvPersonnel.Rows[i].DefaultCellStyle.BackColor = System.Drawing.Color.White;
                    }
                    else if (this.gvPersonnel.Rows[i].Cells["列字段名"].Value== "某某值")
                    {
                        this.gvPersonnel.Rows[i].DefaultCellStyle.BackColor = System.Drawing.Color.Azure;
                        i += 1;
                    }                                
                }
            } 
        }
        #endregion      
       
      

  3.   

    dgUser.Rows[i].Cells[1].Value = System.Drawing.Image.FromFile("E:\\YXZH.gif");
    这种写法为什么不行呢?