2016-04-15 4 views
2

私はいつもDataGridViewの顧客を読み込めませんでした。彼らはいつも私がこのC#with MySQLデータをバインド元に追加レコードソースで停止8

public class Customers 
    { 
     public string No { get; set; } 
     public string ID { get; set; } 
     public string NoSPU { get; set; } 
     public string Name { get; set; } 
     public string Telp { get; set; } 
     public string Kavling { get; set; } 
     public string Tipe { get; set; } 
     public string Pokok { get; set; } 
     public string Bunga { get; set; } 
    } 

のように私のアプリの名前空間の下でお客様のクラスがあり、これが私のDataGridViewにcustomersBindingSourceに項目を追加するために私のコードであると私はformLoadイベント

に入れレコード#8

にフリーズ

string query = "select * from customer";   
      customersBindingSource.Clear(); 
      Int32 i = 0; 
      MySqlDataReader reader = dx.findQuery(query); 
      while (reader.Read()) 
      { 
       i++; 
       customersBindingSource.Add(new Customers() { 
        No = i.ToString(), 
        ID = reader.GetString("id"), 
        NoSPU = reader.GetString("nospu"), 
        Name = reader.GetString("nama"), 
        Telp = reader.GetString("telp"), 
        Kavling = reader.GetString("kavling"), 
        Tipe = reader.GetString("tipe") 
       }); 
       MessageBox.Show(i.ToString()+" OKE"); 
      } 
      reader.Close(); 

私が顧客テーブルで8未満のデータを使用しようとしている場合は、常に動作しますが、8以上の新規顧客を追加すると、常に顧客フォームが表示されません。コードに間違いや制限がありますか?

答えて

1

この方法のように試してみてください。

// Create and populate the list of DemoCustomer objects 
// which will supply data to the DataGridView. 
List<DemoCustomer> customerList = new List<DemoCustomer>(); 
customerList.Add(DemoCustomer.CreateNewCustomer()); 
customerList.Add(DemoCustomer.CreateNewCustomer()); 
customerList.Add(DemoCustomer.CreateNewCustomer()); 

// Bind the list to the BindingSource. 
this.customersBindingSource.DataSource = customerList; 

は、それはあなたを助けることができると思います。

関連する問題