1 可以考虑重写控件 用baidu或者google搜索”C#给WinForm(窗体)下DataGridView控件添加单选选或多选按钮列“
2 checkboxcolumn,这个时候就需要在cellclick事件(gridview)判断是否单机的是checkboxcolumn,如果是就在后台置一个状态变量为true,如果以后的cellclick判断仍未true就表明已经选择了,这个方法在于你一定得注意什么时候需要重置这个状态变量?比如取消原选择
如下,稍微改下函数名就行了,别忘了也在designer里面加上
///
/// checkedListBox单选
///
///
///
private void checkedListBox1_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;
}
记录当前点击行位置,然后遍历所有gridview行,全部取消选中,最后设置你记录行的checkbox选中。