2017-02-25 5 views
-1

wampサーバーで本と著者の2つのテーブルを作成しました。 2つのdatagridviewをIDで接続するにはどうすればいいですか? 例:authoridを指定してbookdatagridviewから最後の列までの本の詳細を選択した場合。特定の本の著者を選択した本の著者からのベースは、bookdatagridviewの横のauthordatagridviewに表示する必要があります。2つのdatagridviewを接続する方法ID

答えて

0

thisリンクを参照してください:ありがとうございます、私はそれを試してみましょう

private DataGridView masterDataGridView = new DataGridView(); 
    private BindingSource masterBindingSource = new BindingSource(); 
    private DataGridView detailsDataGridView = new DataGridView(); 
    private BindingSource detailsBindingSource = new BindingSource(); 

private void GetData() 
    { 
     try 
     { 
      // Specify a connection string. Replace the given value with a 
      // valid connection string for a Northwind SQL Server sample 
      // database accessible to your system. 
      String connectionString = 
       "Integrated Security=SSPI;Persist Security Info=False;" + 
       "Initial Catalog=Northwind;Data Source=localhost"; 
      SqlConnection connection = new SqlConnection(connectionString); 

      // Create a DataSet. 
      DataSet data = new DataSet(); 
      data.Locale = System.Globalization.CultureInfo.InvariantCulture; 

      // Add data from the Customers table to the DataSet. 
      SqlDataAdapter masterDataAdapter = new 
       SqlDataAdapter("select * from Customers", connection); 
      masterDataAdapter.Fill(data, "Customers"); 

      // Add data from the Orders table to the DataSet. 
      SqlDataAdapter detailsDataAdapter = new 
       SqlDataAdapter("select * from Orders", connection); 
      detailsDataAdapter.Fill(data, "Orders"); 

      // Establish a relationship between the two tables. 
      DataRelation relation = new DataRelation("CustomersOrders", 
       data.Tables["Customers"].Columns["CustomerID"], 
       data.Tables["Orders"].Columns["CustomerID"]); 
      data.Relations.Add(relation); 

      // Bind the master data connector to the Customers table. 
      masterBindingSource.DataSource = data; 
      masterBindingSource.DataMember = "Customers"; 

      // Bind the details data connector to the master data connector, 
      // using the DataRelation name to filter the information in the 
      // details table based on the current row in the master table. 
      detailsBindingSource.DataSource = masterBindingSource; 
      detailsBindingSource.DataMember = "CustomersOrders"; 
     } 
     catch (SqlException) 
     { 
      MessageBox.Show("To run this example, replace the value of the " + 
       "connectionString variable with a connection string that is " + 
       "valid for your system."); 
     } 
    } 
+0

はそれらを結合させるDataSet &使用BindingSourceで関係を作成します –

関連する問題