datagridview(True/False) からチェックボックスの値を取得したいのですが、常に値「null」を取得します。チェックボックスの値を取得するコードは次のとおりです。
DataGridViewCheckBoxCell boolean = (DataGridViewCheckBoxCell)dgv[e.ColumnIndex, e.RowIndex];
string checkCheckboxChecked = ((bool)boolean.FormattedValue) ? "False" : "True";
このコードは、チェックボックスがオンになっている場合でもafalse
を返します。また、別のコードを試しました:Boolean.FormattedValue
object value = dgvVisual[e.ColumnIndex, e.RowIndex].Value;
そして、このコードは null の値を返します
なぜこれが起こるのですか?
PSはのe
イベントですCELL CONTENT CLICK
。
以下は、datagridview セル コンテンツ クリックの完全なコードです。
private void dgvVisual_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
int Number1= int.Parse(dgvVisual[0, e.RowIndex].Value.ToString());
int Number2 = (e.ColumnIndex - 1);
DataGridViewCheckBoxCell boolean = (DataGridViewCheckBoxCell)dgvVisual[e.ColumnIndex, e.RowIndex];
bool checkCheckboxChecked = (null != boolean && null != boolean.Value && true == (bool)boolean.Value);
//string checkCheckboxChecked = "";
if (checkCheckboxChecked)
{
//do something if the checkbox is checked
}
else
{
//do something if the checkbox isn't
}
}
解決済み: を変更しCELL END EDIT EVENT
、クリック コンテンツdatagridview.CurrentCell
を別のセルに追加しました。