0

データベースから値を取得comboBoxする FORM1 を取得しました

FORM1 コード:

public void fillComboBox()
{           
    using (SqlConnection myDatabaseConnection = new SqlConnection(myConnectionString.ConnectionString))
    {
         myDatabaseConnection.Open();
         using (SqlCommand mySqlCommand = new SqlCommand("Select LastName, FirstName, MiddleName from EMP", myDatabaseConnection))
         using (SqlDataReader sqlreader = mySqlCommand.ExecuteReader())
         {
             while (sqlreader.Read())
             {
                 string Lname = sqlreader.GetString(sqlreader.GetOrdinal("LastName"));
                 string Fname = sqlreader.GetString(sqlreader.GetOrdinal("FirstName"));
                 string Mname = sqlreader.GetString(sqlreader.GetOrdinal("MiddleName"));
                 string fullName = Lname + ", " + Fname + " " + Mname; 
                 comboBox3.Items.Add(fullName);
             }
         }
    }
}

FORM1 からbutton、データベースにデータを追加できる FORM2 を開くことができます。

FORM2 コード:

public void addData()
{
    string a = "INSERT INTO Emp(LastName, FirstName, MiddleName) Values('"+textBox1.Text+"', '"+textBox2.Text+"', '"+textBox3.Text+"')";

    using (SqlConnection myDatabaseConnection1 = new SqlConnection(myConnectionString.ConnectionString))
    {
         myDatabaseConnection1.Open();
         using (SqlCommand mySqlCommand = new SqlCommand(" " + a + " ", myDatabaseConnection1))
         mySqlCommand.ExecuteReader();
    }  
}

private void button1_Click(object sender, EventArgs e)
{
    addData();
    Form1 nf = new Form1();
    nf.fillComboBox();
    this.close
}

データベースを確認し、データが追加されていることを確認しました。
問題は、データベースにデータを追加すると、comboBox がロードしたデータを更新しないことです。プログラムを再度実行した後にのみ更新されます。

4

1 に答える 1