2015-09-05 70 views
0

我已經在整個項目中使用了我的數據集,沒有任何問題。未以新格式識別數據集

當我添加一個新表單時,數據集不被識別 - 只是新表單。

它說: The name 'mydataset' does not exist in the current context

我已經檢查using System.Data.SqlServerCe;using System.Data.SqlClient;form.cs

我試圖在form.cs申報新的,它不起作用。

form.cs:

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 System.Data.SqlServerCe; 
using System.Data.SqlClient; 

namespace O2 
{ 
public partial class ProductSelect : Form 
{ 
    public ProductSelect() 
    { 
     InitializeComponent(); 
    } 

    private void ProductSelect_Load(object sender, EventArgs e) 
    { 
     //DatabaseDataSet ds = new DatabaseDataSet(); 

     foreach (DataRow row in mydataset.Products.Rows) 
     { 
      listBox1.Items.Add(row["Product_Name"]); 
     } 

    } 
} 
} 

任何幫助嗎?

編輯: 窗口2,其中mydataset完美的作品(未聲明的):

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 System.Data.SqlServerCe; 
using System.Data.SqlClient; 

namespace O2 
{ 
public partial class SalesBill : Form 
{ 

    public SalesBill() 
    { 
     InitializeComponent(); 
    } 



    private void SalesBill_Load(object sender, EventArgs e) 
    { 
    foreach (DataRow row in databaseDataSet.Clients.Rows) 
     { 
      listBox1.Items.Add(row["Client_Name"]); 
     } 

    } 
    } 
} 
+0

顯示您的代碼。 – thewisegod

+0

我沒有看到你宣佈「mydataset」的地方。 – thewisegod

+0

我還沒有以其他形式宣佈過它,它的工作原理非常完美。我已經評論了我宣佈新的一行 –

回答

2
  • 如果您使用的是設計用於配置形式和它的元素,從數據部分工具箱中,將一個DataSet和它拖放形式。您可以選擇typed dataset或無類型數據集

  • 如果要從代碼創建和使用數據集,請考慮聲明數據集變量並創建已鍵入或未指定類型的數據集的實例。

在設計器中打開表單2,您可能會在其組件托盤中看到名稱爲databaseDataSet的組件。看起來你正在使用一個類型化的數據集。

如果您查看數據源窗口(Shift + Alt + D),您將看到DatabaseDataset的一個節點,並帶有一些子表節點。

您可以將客戶端表格拖放到窗體上。

+0

它的工作。謝謝。 但爲什麼新的表單不會像其他表單一樣產生? –

+0

可能您已將其從其他窗體上的數據源窗口中刪除。 –

1

在.NET中聲明瞭一個數據集是這樣的:

DataSet myDataSet = new DataSet(); 
1

你可以聲明數據集作爲全球

public static readonly DataSet MyDataSet = new DataSet();  

並以其他形式存取,如

CLassName.MyDataSet; // ClassName is that in which you declare your dataset 

但推薦的方法是,您需要從工具箱或從新項目對話框中添加DataSet並向其中添加所需的表格。

enter image description here