我正在使用DataGridViewCheckBoxCell,但我无法弄清楚如何让 - > Value属性"正确"工作.
for (int i = this->dgvConfigs->Rows->Count - 1; i >= 0 ; i --){ DataGridViewCheckBoxCell^ dgvcbc = (DataGridViewCheckBoxCell^) this->dgvConfigs->Rows[i]->Cells[2]; // This is truely a weird behavior of the DataGridViewCheckBoxCell if (dgvcbc->Value->ToString() == "True"){ // Do stuff } }
现在我无法弄清楚 - >价值可能是什么.当我测试
dgvcbc->Value == true
它永远不会触发,或
dgvcbc->Value == dgvcbc->TrueValue
当我在调试器中查看这些值时,它们都是"{true}",但是等式永远不会被评估为true
我甚至试过了
dgvcbc->TrueValue = true; dgvcbc->Value == dgvcbc->TrueValue
再次,两者都显示为"{true}",但// Do Stuff永远不会匹配
使用其中之一
EditingCellFormattedValue,或
EditedFormattedValue
而不是Value,它给出了单元格的当前(格式化)值 - 哪一个取决于你想要如何访问它(当处于编辑模式时)