DataGridView 不显示信息

DataGridView not showing the information

我正在尝试让我的 datagridviewDocumentos 显示 SP 信息,并且它只是在我的 windowsForm 中张贴空白。 首先是我的 DataAccess Class.

    public DataTable Sp_Teste(int JobID, int BatchID)
    {

        try
        {
            ManageConnectionStateIbml1();
            SqlCommand command = new SqlCommand("SP_SELECT_DOCS_WHERE_JOBID_STATUS", 
            connectionIBML1);
            command.CommandType = CommandType.StoredProcedure;
            command.Parameters.AddWithValue("@JobID", JobID);
            command.Parameters.AddWithValue("@BatchID", BatchID);
            SqlDataAdapter adapter = new SqlDataAdapter(command);
            DataSet ds = new DataSet();
            adapter.Fill(ds);
            return ds.Tables[0];


        }
        catch (Exception ex)
        {
            throw ex;
        }
        finally
        {
            ManageConnectionStateIbml1();
            connectionIBML1.Close();
           
        }
 
    }

然后是我的form.cs,请忽略前两个区域是我另外两个数据网格

    public void Update(DataGridViewCellEventArgs e)
    {
        #region DatagridViewOCR
        dataGridViewOCR.ColumnCount = 4;
        DataGridViewColumn columnBatchID = dataGridViewOCR.Columns[0];
        columnBatchID.Width = 130;
        DataGridViewColumn columnDOCID = dataGridViewOCR.Columns[1];
        columnDOCID.Width = 130;
        DataGridViewColumn columnOCR_DATA = dataGridViewOCR.Columns[2];
        columnOCR_DATA.Width = 130;
        DataGridViewColumn columnFetch_Name = dataGridViewOCR.Columns[3];
        columnFetch_Name.Width = 130;
        dataGridViewOCR.Columns[0].Name = "BatchID";
        dataGridViewOCR.Columns[1].Name = "DOCID";
        dataGridViewOCR.Columns[2].Name = "OCR_DATA";
        dataGridViewOCR.Columns[3].Name = "Fetch_Name";
        #endregion

        #region DatagridViewDados
        dataGridViewDados.ColumnCount = 5;
        DataGridViewColumn columnDataDoc = dataGridViewDados.Columns[0];
        columnDataDoc.Width = 120;
        DataGridViewColumn columnDataCliente = dataGridViewDados.Columns[1];
        columnDataCliente.Width = 120;
        DataGridViewColumn columnDataData = dataGridViewDados.Columns[2];
        columnDataData.Width = 120;
        DataGridViewColumn columnDataTipoDoc = dataGridViewDados.Columns[3];
        columnDataTipoDoc.Width = 120;
        DataGridViewColumn columnDataOutros = dataGridViewDados.Columns[3];
        columnDataOutros.Width = 120;
        dataGridViewDados.Columns[0].Name = "DOC";
        dataGridViewDados.Columns[1].Name = "Cliente";
        dataGridViewDados.Columns[2].Name = "Data";
        dataGridViewDados.Columns[3].Name = "TipoDoc";
        dataGridViewDados.Columns[4].Name = "Outros";
        #endregion

        #region DatagridViewDocumentos
        int JobID = 
        Convert.ToInt32(dataGridViewDocumentos.Rows[e.RowIndex].Cells[0].Value.ToString());
        int BatchID = 
        Convert.ToInt32(dataGridViewDocumentos.Rows[e.RowIndex].Cells[0].Value.ToString());
        dataGridViewDocumentos.DataSource = null;
        dataGridViewDocumentos.Columns.Clear();
        dataGridViewDocumentos.Refresh();
       
       
       
        DataGridViewColumn columnCaixa = dataGridViewDocumentos.Columns[0];
        columnCaixa.Width = 50;
        DataGridViewColumn columnDOC = dataGridViewDocumentos.Columns[1];
        columnDOC.Width = 50;
        DataGridViewColumn columnID = dataGridViewDocumentos.Columns[2];
        columnID.Width = 50;
        DataGridViewColumn columnPROC = dataGridViewDocumentos.Columns[3];
        columnPROC.Width = 50;

        dataGridViewDocumentos.Columns.Add(columnCaixa);
        dataGridViewDocumentos.Columns.Add(columnDOC);
        dataGridViewDocumentos.Columns.Add(columnID);
        dataGridViewDocumentos.Columns.Add(columnPROC);
        dataGridViewDocumentos.ColumnCount = 4;

        
        DataTable dt = da.Sp_Teste(JobID, BatchID);
        dataGridViewDocumentos.DataSource = dt;
        #endregion


    }
}

这是我的sp:

    CREATE PROCEDURE SP_SELECT_DOCS_WHERE_JOBID_STATUS
@JobID INT,
@BatchID INT
AS
BEGIN

SELECT top(10) i.*
from jobtable as j
  inner join batchtable as b
  on j.JobID = b.JobID
  inner join imgtable as i
  on i.BatchID = b.BatchID
END
GO

希望你们能帮帮我,现在我没有出现任何错误。

删除此行 dataGridViewDocumentos.Columns.Clear(); 并检查会发生什么

好好调试, 使用 F10 键进行单步调试,并检查你的 sp returns 是否有任何数据。