使用 Stimulsoft 的数据网格视图

datagridview with stimulsoft

代码以 windows 形式用 C# 编写 我有按钮 Print,它的 onclick 必须打开 Stimulsoft 并将 dataGridView1 发送到 Stimulsoft。我该怎么做?请帮忙,我在网上找不到答案

    private void Table_Load(object sender, EventArgs e)
    {
        dataGridView1.DataSource = GetTable();


    }
    private DataTable GetTable()
    {
        DataTable dtRadnice = new DataTable();
        using (SqlConnection conn = new SqlConnection(_csDataFin))
        {

            conn.Open();
            SqlCommand comm = new SqlCommand("traziuEvidenciji", conn);
            comm.CommandType = CommandType.StoredProcedure;
            DateTime dtPocetak;
            DateTime dtZavrsetak;
            dtPocetak = dateTimePicker1.Value.Date;
            dtZavrsetak = dateTimePicker2.Value.Date;

            comm.Parameters.Add("@dtPocetak", SqlDbType.DateTime).Value = dtPocetak;
            comm.Parameters.Add("@dtZavrsetak", SqlDbType.DateTime).Value = dtZavrsetak;

            SqlDataReader reader = comm.ExecuteReader();
            dtRadnice.Load(reader);


        }
        return dtRadnice;
    }
   private void btnPrint_Click(object sender, EventArgs e)
    {
     //some text
     }

这是将数据放入dataGridView的存储过程

ALTER PROCEDURE traziuEvidenciji

@dtPocetak datetime,
@dtZavrsetak datetime
 AS
 BEGIN
 SELECT EvidencijaORadu.IDEvidencijaORadu
   ,Korisnik_s.Name
  ,EvidencijaORadu.DateOfMonth
  ,EvidencijaORadu.PocetakRada
  ,EvidencijaORadu.ZavrsetakRada
  ,EvidencijaORadu.RedovnoRadnoVrijeme


FROM EvidencijaORadu
  inner join [EmmettShared].dbo.[Korisnik_s] on Korisnik_s.IDKorisnik= 
  EvidencijaORadu.KorisnikID
  WHERE [DateOfMonth] BETWEEN CAST( @dtPocetak AS date) AND 
 CAST(@dtZavrsetak AS DATE)
    ORDER BY DateOfMonth ASC

    END

您查看过stimulsoft 文档了吗?例如:

您似乎有很多选项可以将数据推送到 Stimulsoft 报告。特别是您可能对使用方法 StiReport.RegData(DataTable data) 感兴趣。至少 it exists based on API reference.

另外,youtube 上好像有很多他们的视频。例如,看看这个 Binding DataSet at Runtime - Stimulsoft Reports.