Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 更改选项卡面板内datagridview单元格的颜色_C#_Winforms_Datagridview_Tabs - Fatal编程技术网

C# 更改选项卡面板内datagridview单元格的颜色

C# 更改选项卡面板内datagridview单元格的颜色,c#,winforms,datagridview,tabs,C#,Winforms,Datagridview,Tabs,我有一个tabControl,里面有两个tabpanel。tabPanels包含一个datagridview,我正在尝试更改单元格的颜色。 如果我更改第一个选项卡面板中包含的第一个datagrid的颜色,它就会工作。但是如果我对另一个tabPanel做同样的操作,代码就什么也没做 dgvInTheFirstTabPanel.Rows[0].Cells[6].Style.BackColor = Color.Yellow; 这项工作很好,但是 dgvInTheSecondTabPanel.Row

我有一个tabControl,里面有两个tabpanel。tabPanels包含一个datagridview,我正在尝试更改单元格的颜色。 如果我更改第一个选项卡面板中包含的第一个datagrid的颜色,它就会工作。但是如果我对另一个tabPanel做同样的操作,代码就什么也没做

 dgvInTheFirstTabPanel.Rows[0].Cells[6].Style.BackColor = Color.Yellow;
这项工作很好,但是

dgvInTheSecondTabPanel.Rows[0].Cells[6].Style.BackColor = Color.Yellow;

这不起作用,我认为问题在于更改了活动的选项卡面板。

我解决了问题,存在一个错误,如果您没有在其中一个选项卡内单击,则无法识别该选项卡。为了解决这个问题,您可以在加载表单时执行此操作。通过这种方式,可以修改“其他”选项卡中包含的对象

private void main_Load(object sender, EventArgs e)
    {
    //Scan all tabs
                tabControl1.SelectedTab = tabControl1.TabPages[1];
                tabControl1.SelectedTab = tabControl1.TabPages[2];
                tabControl1.SelectedTab = tabControl1.TabPages[0];
    ...
    }
     Best regards

然后,您可以修改单元格的颜色或dataGrid的其他属性。

您得到的错误是什么?我没有得到错误,只是代码没有执行任何操作。更改颜色时,datagridview控件添加到第二个选项卡中了吗?是的,数据已计费,但单元格的颜色没有更改
tabControl1.SelectedTab = 0 
dgvInTheFirstTabPanel.Rows[0].Cells[6].Style.BackColor = Color.Yellow;

tabControl1.SelectedTab = 1
dgvInTheSecondTabPanel.Rows[0].Cells[6].Style.BackColor = Color.Yellow;