访问gridview中的单元格

本文关键字:单元格 gridview 访问 | 更新日期: 2023-09-27 18:10:28

上周我开始尝试使用Winforms来自动化一些报告。我并不喜欢这种转变(尽管对你们中的一些人来说可能很简单)!

我目前显示数据从一个SQL视图,我使用Oracle SQL开发人员创建的。我通过使用DataGridView Tasks来选择表并显示它来访问数据(这似乎是最直接的方法)。

所有数据显示良好。但是,我现在想访问表中的单元格。我希望能够根据它们的值改变细胞的颜色,并抽出一些数据,如果需要的话。

要访问数据并突出显示行,我希望这样做

protected void MyGridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        int theValue = Convert.ToInt32(e.Row.Cells[0].Text);
            if (theValue>0)
                e.Row.Cells[0].BackColor = System.Drawing.Color.Red
    }
}

它不工作,因为事件没有触发。我想我应该将数据绑定到我的gridview,但我已经通过设计师加载了所有的数据。这就是问题所在吗?我不知道如何自己编码,我以前试过,但它扔了一个摇摇欲坠。

此外,当我试图通过设计器更改数据库的SQL查询时,它不起作用。我想这样下去我会疯掉的!

访问gridview中的单元格

你需要像这样在DataGridView上使用CellFormatting事件

private void MyGridView_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
        {
            if ((int)MyGridView.Rows[e.RowIndex].Cells[0].Value > 30)
            {
                e.CellStyle.BackColor = System.Drawing.Color.Red;
                e.CellStyle.ForeColor = System.Drawing.Color.White;
            }
        }