Bài 3: Tạo reports từ DataSet

Mấy bài trước tui chỉ tạo report từ database, ở bài này tui sẽ tạo 1 report từ DataSet coi sao nhé. Tạo 1 project winform mới, add thêm vào 1 DataSet,giữ nguyên các thông tin mặc định của nó,trên DataSet đó ta tạo ra 1 datatable có 2 column là ID và Item

Bài 3: Tạo reports từ DataSet

Bây giờ ta sẽ tạo 1 report từ DataSet mới tạo ra. Vào menu Project->Add new item, chọn crytal report như mấy cái trên kia, để các thông số mặc định luôn cho tiện. Nhưng ở đây ta ko tạo ra connect tới database nào mà chọn luôn dataset lúc này :

Ở bước kế tiếp, chọn luôn cả 2 column của DataTable trên DataSet lúc nãy nhé

Bây giờ tạo thêm vào form 1 cái button và 1 crystalReportViewer control như mấy cái trước. Tui sẽ tạo dữ liệu đơn giản cho dataset và hiển thị ở report :

private void button1_Click(object sender, EventArgs e)
        {
            DataSet1 ds = new DataSet1();
            DataTable t = ds.Tables.Add("Items");
            t.Columns.Add("id", Type.GetType("System.Int32"));
            t.Columns.Add("Item", Type.GetType("System.String"));

            DataRow r;
            int i = 0;
            for (i = 0; i <= 9; i++)
            {
                r = t.NewRow();
                r["id"] = i;
                r["Item"] = "Item" + i;
                t.Rows.Add(r);
            }

            CrystalReport1 objRpt = new CrystalReport1();
            objRpt.SetDataSource(ds.Tables[1]);
            crystalReportViewer1.ReportSource = objRpt;
            crystalReportViewer1.Refresh();

        }