#CheckBox设置为单选
DataGridView中的checkbox单选
private void SelectEquipment_skinDataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
string _selectValue = SelectEquipment_skinDataGridView.Rows[e.RowIndex].Cells[0].EditedFormattedValue.ToString();
//FormattedValue是操作提交后的结果,而EditedFormattedValue是当前的结果,不管结果是否已经提交。
if (_selectValue == "True")
{
for (int i = 0; i < SelectEquipment_skinDataGridView.Rows.Count; i++)
{
if (i != e.RowIndex)
{
SelectEquipment_skinDataGridView.Rows[i].Cells[0].Value = false;
}
}
}
}
CheckedListBox中的checkbox单选
代码块语法遵循标准markdown代码,例如:
//设置议题处单选
private void MeetingPlan_NewPlan_MeetingAgenda_checkedListBox_ItemCheck(object sender, ItemCheckEventArgs e)
{
if (e.CurrentValue == CheckState.Checked) return;//取消选中就不用进行以下操作
for (int i = 0; i < ((CheckedListBox)sender).Items.Count; i++)
{
((CheckedListBox)sender).SetItemChecked(i, false);//将所有选项设为不选中
}
e.NewValue = CheckState.Checked;//刷新
}
多个 checkbox 单选
private void checkBox_单选_CheckStateChanged(object sender, EventArgs e)
{
if ((sender as CheckBox).Checked == true)
{
foreach (CheckBox chk in (sender as CheckBox).Parent.Controls)
{
if (chk != sender)
{
chk.Checked = false;
}
}
}
}