C# Gridview通过复选框以编程方式更改行背景色
我正在使用VS2010C# 我有一个DataGridView不连接到数据源(colums是手动添加的),每行都有一个复选框,应该始终启用该复选框。 当用户选中复选框时,它应该做两件事:C# Gridview通过复选框以编程方式更改行背景色,c#,gridview,datagridview,colors,row,C#,Gridview,Datagridview,Colors,Row,我正在使用VS2010C# 我有一个DataGridView不连接到数据源(colums是手动添加的),每行都有一个复选框,应该始终启用该复选框。 当用户选中复选框时,它应该做两件事: 启用gridview的行(其余列、文本框、组合框等) 将行的背景色更改为白色(默认为灰色,如禁用) 我尝试了所有提供的代码和其他解决方案,但没有任何上述要求的解决方案。 请帮忙。!! 非常感谢 private void dgv1_CellClick(object sender, DataGridViewCe
- 启用gridview的行(其余列、文本框、组合框等)
- 将行的背景色更改为白色(默认为灰色,如禁用)
private void dgv1_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 0)
{
Boolean Xcheckbox = (Boolean)dgv1.Rows[e.RowIndex].Cells[0].Value;
if (Xcheckbox == true)
{
dgv1.Rows[dgv1.CurrentRow.Index].DefaultCellStyle.BackColor = System.Drawing.Color.Red;
}
for (int i = 1; i < dgv1.Columns.Count-1; i++)
{
{
dgv1.Rows[e.RowIndex].Cells[i].ReadOnly = Xcheckbox;
}
}
}
}
private void dgv1_CellClick(对象发送方,DataGridViewCellEventArgs e)
{
如果(e.ColumnIndex==0)
{
布尔值Xcheckbox=(布尔值)dgv1.Rows[e.RowIndex]。单元格[0]。值;
如果(Xcheckbox==true)
{
dgv1.Rows[dgv1.CurrentRow.Index].DefaultCellStyle.BackColor=System.Drawing.Color.Red;
}
对于(int i=1;i
您尝试过什么?请提供代码。I’我无法对你的问题发表评论。您可以将事件添加到复选框中,然后选择当前行。这将为您提供正确的操作方法
更新2:
你可以试试这个
private void myDataGrid_OnCellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == myCheckBoxColumn.Index && e.RowIndex != -1)
{
// Handle your checkbox state change here
}
}
将事件添加到行内的复选框中。在事件中,然后启用其余列、文本框和组合,并更改颜色。发布你已经尝试过的代码。我发布了我使用的代码,但仍然不起作用,请你帮忙!!谢谢,非常好,非常感谢。我想投票表决答案,但我仍然没有足够的信用。但无论如何,非常感谢