2016-10-02 15 views
-1

データグラムビューからレポートビューアにデータを転送する必要があります。私のコード:datagridview to reportviewer C#

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.Windows.Forms; 
using Microsoft.Reporting.WinForms; 


namespace test 
{ 
    public partial class Form1 : Form 
    { 

    public Form1() 
    { 
     InitializeComponent(); 
    } 

private void button1_Click(object sender, EventArgs e) 
{ 
    //dataGridView1.AutoGenerateColumns = false; 
    dataGridView1.Columns.Add("test"); 
    dataGridView1.Columns.Add("One"); 
    dataGridView1.Columns.Add("two"); 
    dataGridView1.Columns.Add("three"); 
    dataGridView1.Columns.Add("four"); 
    dataGridView1.Columns.Add("five"); 
    dataGridView1.Columns.Add("six"); 
    dataGridView1.Rows.Add("test", "test ", "1", "2", "3", "4"); 
    dataGridView1.Rows.Add(980, 10, 70, 20, 50); 
    dataGridView1.Rows.Add(860, 20, 50, 60, 35); 
    dataGridView1.Rows.Add(950, 80, 35, 30, 40); 
    dataGridView1.Rows.Add(800, 40, 90, 30, 25); 
    dataGridView1.Rows.Add(900, 20, 45, 30, 60); 
    dataGridView1.Rows.Add(300, 20, 20, 20, 20); 
    dataGridView1.Rows.Add("check" , 50, 80, 50, 70); 
    } 
} 

これらの参照は、役立っていない: How to Pass data table from DataGridView ro ReportViewer

Show data from datagridview to reportviewer C# をC#のをレポートビューアーするのDataGridViewからのデータを表示する方法は?

+1

あなたの 'DataGridView'の' DataSource'として 'DataTable'を使うことができます。次に、同じ 'DataTable'を使用してレポートを作成し、それをレポートの' DataSource'として設定します。 –

+0

私はあまりにもそうしようとしましたが、レポートは空です。 DataTable table1 =新しいDataTable(); dataGridView1.DataSource = table1; table1.Columns.Add( "test"); ... DataSet set = new DataSet(); set.DataSetName = "datasetname"; set.Tables.Add(table1); – player

+1

上記の例の 'DataGridView'は' DataSource'を使用していません。行をコントロールに直接追加しています。 'DataTable'を使用してください。 –

答えて

0

dataGridViewに直接追加しようとしています。
IListから追加してみます。そして、DataGridViewの

var bindTime= new BindingList<Time>(listTime); 
var sourceTime= new BindingSource(bindTime, null); 
dataGridView.DataSource = sourceTime; 


レポートビューアーに同じを使用して、あなたがたDataGridViewに新しい何かを追加する必要がある場合は、単に追加に追加列

DataGridViewColumn columnTime = new DataGridViewTextBoxColumn(); 
        columnTime .DataPropertyName = "Time"; 
        columnTime .Name = "Time:"; 
dataGridView.Columns.Add(columnTime); 

を追加するには

IListとDataGridとReportViewerの両方をリフレッシュする
私はeacを追加するよりも簡単になるだろうh行を個別に