C# datagrid.columns[number]返回什么?

C# datagrid.columns[number]返回什么?,c#,asp.net,datagrid,C#,Asp.net,Datagrid,我正在绑定来自两个不同datagrid的数据表中的数据 protected ICollection BindGenerateReport() { DataTable dtGenerateReport = new DataTable(); DataRow drRow; for (int innerCounter = 0; innerCounter < dgInvoices.Columns.Count; innerCounter++)

我正在绑定来自两个不同datagrid的数据表中的数据

protected ICollection BindGenerateReport()
    {
        DataTable dtGenerateReport = new DataTable();
        DataRow drRow;
        for (int innerCounter = 0; innerCounter < dgInvoices.Columns.Count; innerCounter++)
        {
            dtGenerateReport.Columns.Add();
        }
        for (int counter = 0; counter < dgInvoices.Items.Count+dgReceipts.Items.Count;counter++ )
        {
            drRow = dtGenerateReport.NewRow();
            if (dgReceipts.Columns[6] == dgInvoices.Columns[1])
            {
                for (int innerCounter = 0; innerCounter < dgReceipts.Columns.Count; innerCounter++)
                {
                    drRow[innerCounter] = dgReceipts.Columns[innerCounter];
                }
            }
            else
            {
                for (int innerCounter = 0; innerCounter < dgInvoices.Columns.Count; innerCounter++)
                {
                    drRow[innerCounter] = dgInvoices.Columns[innerCounter];
                }
            }
           dtGenerateReport.Rows.Add(drRow);
        }

        DataView dv = new DataView(dtGenerateReport);
        return dv;
    }

但是我想知道exactlu datagrid.columns[number]返回的是什么(该列内的值或数据类型或仅列集合)。我的代码不起作用

columns集合将返回从
DataGridColumn
派生的类型的实例,这可能是
BoundColumn
按钮栏


查看以了解更多信息。

(dgReceipts.Columns[6]==dgInvoices.Columns[1])它将第[6]列的值与第[1]列或其他列的值进行比较,这将比较DataGridColumn的两个实例,我认为它们不具有可比性。您需要比较行值。。
 protected void btnGenerateReport_Click(object sender, EventArgs e)
    {

        dgGenerateReport.DataSource = BindGenerateReport();
        dgGenerateReport.DataBind();
    }