datagridviewCheckboxColumn问题
1,如何控制datagridviewCheckboxColumn只能单选,并且第二次点的时候勾选去掉2,如果可以多选,点确定后如何保存选定的值如图,谢谢!...
1,如何控制datagridviewCheckboxColumn只能单选,并且第二次点的时候勾选去掉
2,如果可以多选,点确定后如何保存选定的值
如图,谢谢! 展开
2,如果可以多选,点确定后如何保存选定的值
如图,谢谢! 展开
1个回答
展开全部
你好!
1.checkbox原意本来就不是用来单选的,所以要单选只能用代码控制了,我这随手写了个了,在
dataGridView1_CellClick事件里写的,代码实例如下:
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
//这边是实现单选的
if (dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].GetType() == typeof(DataGridViewCheckBoxCell))
{
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
dataGridView1.Rows[i].Cells[e.ColumnIndex].Value = false;
}
bool flag = (bool)dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value;
dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = !flag;
}
///////////////////////////////////
}
2.保存选定项的值时要把值插入其他数据库还是什么的,我下面的例子是把值放到了一个object数组里,其他的自己看着操作,在当前页面的一个button事件里
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
DataGridViewCheckBoxCell check = dataGridView1.Rows[i].Cells[0] as DataGridViewCheckBoxCell;
if (check.Value != null)
{
if ((bool)check.Value)
{
object[] item = new object[]
{
dataGridView1.Rows[i].Cells[1].Value.ToString(),
dataGridView1.Rows[i].Cells[2].Value.ToString(),
};
//在这边对当期选择的item数组一行一行的操作
//do something!
}
}
}
1.checkbox原意本来就不是用来单选的,所以要单选只能用代码控制了,我这随手写了个了,在
dataGridView1_CellClick事件里写的,代码实例如下:
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
//这边是实现单选的
if (dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].GetType() == typeof(DataGridViewCheckBoxCell))
{
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
dataGridView1.Rows[i].Cells[e.ColumnIndex].Value = false;
}
bool flag = (bool)dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value;
dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = !flag;
}
///////////////////////////////////
}
2.保存选定项的值时要把值插入其他数据库还是什么的,我下面的例子是把值放到了一个object数组里,其他的自己看着操作,在当前页面的一个button事件里
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
DataGridViewCheckBoxCell check = dataGridView1.Rows[i].Cells[0] as DataGridViewCheckBoxCell;
if (check.Value != null)
{
if ((bool)check.Value)
{
object[] item = new object[]
{
dataGridView1.Rows[i].Cells[1].Value.ToString(),
dataGridView1.Rows[i].Cells[2].Value.ToString(),
};
//在这边对当期选择的item数组一行一行的操作
//do something!
}
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询