指某一列根据每行在该列取值不同,ColumnType变化?

解决方案 »

  1.   

    頂一個,我不知道。
    樓主是不是類似下面的意思?查詢條件     運算符     值          邏輯符號
    入庫日期       =       (日期列)        and
    是否審核       =      (Checkbox列)   and
      

  2.   

         DataGridViewDateTimeEditingControl DTCel = new DataGridViewDateTimeEditingControl();//日歷行
         ComboBox cmBox = new ComboBox();//bool行             //日期列彈出日歷,Bool行彈出下拉框
            private void dgvQuery_CellEnter(object sender, DataGridViewCellEventArgs e)
            {
                if (IsLoad)
                {
                    System.Drawing.Rectangle R = dgvQuery.GetCellDisplayRectangle(dgvQuery.CurrentCell.ColumnIndex, dgvQuery.CurrentCell.RowIndex, false);  //获取单元格位置                DTCel.Visible = false;
                    cmBox.Visible = false;                if (dgvQuery.Columns[e.ColumnIndex].Name == "FieldValue1" || dgvQuery.Columns[e.ColumnIndex].Name == "FieldValue2")
                    {
                        //如果該行的字符類型為日期,且單擊的是欄位1或者欄位2
                      
                        if (dgvQuery["FileType", e.RowIndex].Value.ToString() == "D")
                        {
                            dgvQuery.CurrentCell.DataGridView.Controls.Add(DTCel);                        DTCel.SetBounds(R.X, R.Y, R.Width, R.Height); //重新定位日歷                                    DTCel.Visible = true;                    }                    //如果該行的字符類型為Bool,且單擊的是欄位1或者欄位2                                     if (dgvQuery["FileType", e.RowIndex].Value.ToString() == "B")
                        {
                            dgvQuery.CurrentCell.DataGridView.Controls.Add(cmBox);                        cmBox.SetBounds(R.X, R.Y, R.Width, R.Height); //重新定位下拉框                                   cmBox.Visible = true;                    }
                    }
                }
            }