私のコードでは、テーブルを作成してCSVファイルをエクスポートしました。私のコードの別のセクションでは、comboBoxには自分のデータベースのテーブル名が設定されています。これは次のようになります達成しようとしています何データベースに新しいテーブルを作成した後で、comboBoxをリフレッシュする
private void FillCombo()
{
try
{
string connectionString = "Data Source=LPMSW09000012JD\\SQLEXPRESS;Initial Catalog=Pharmacies;Integrated Security=True";
using (SqlConnection con2 = new SqlConnection(connectionString))
{
con2.Open();
string query = "SELECT * FROM INFORMATION_SCHEMA.TABLES ";
SqlCommand cmd2 = new SqlCommand(query, con2);
SqlDataReader dr2 = cmd2.ExecuteReader();
while (dr2.Read())
{
int col = dr2.GetOrdinal("TABLE_NAME");
comboBox1.Items.Add(dr2[col].ToString());
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
は、上記の機能を介して実行して、新しく追加されたテーブルを反映するようコンボボックスをリフレッシュすることです。あなたが推測として、それは動作しますが、値が重複している、
private void button1_Click_1(object sender, EventArgs e)
{
//this is where I would just rewrite the contents of the above function
}
:何頭に浮かんだことは、最初のボタンを作成し、このような上記の関数を書き換えることでした。既存の情報を複製せずにcomboBoxを更新するにはどうすればよいですか?あなたがリコール方法の前に項目をクリアすることができます
最初に項目をクリアしますか? – Berkay
'comboBox1.ResetText()'を実行してから同じ結果を実行し、@Berkayを複写する – Jevon
彼は 'comboBox1.Items.Clear();'を意味します - それを 'FillCombo'の先頭に置き、ボタンクリックハンドラから 'FillCombo'を呼び出します。 – Blorgbeard