私の持っているものはForm1.csの[デザイン]のコンボボックスです。SQLの操作を行うSQLOperationsという別のクラスを作成しました。 ?このコンボボックスのアイテムを別のクラスに追加するためのC#winforms
public static System.Collections.Generic.List<string> SQLServerPull()
{
System.Collections.Generic.List<string> Items = new System.Collections.Generic.List<string>();
string server = "p";
string database = "IBpiopalog";
string security = "SSPI";
string sql = "select server from dbo.ServerList";
using(SqlConnection con = new SqlConnection("Data Source=" + server + ";Initial Catalog=" + database + ";Integrated Security=" + security))
{
con.Open();
SqlCommand cmd = new SqlCommand(sql, con);
SqlDataReader dr = cmd.ExecuteReader();
while(dr.Read())
{
//Add the items to the list.
Items.Add(dr[0].ToString());
//this below doesnt work because it can't find the comboBox
//comboBox1.Items.Add(dr[0].ToString());
//the rest of the code works fine
}
}
//Return the list of items.
return Items;
}
をするか、または代わりに、あなたのUIとデータを結合するのDataTable
public static System.Data.DataTable SQLServerPull()
{
System.Data.DataTable dt = new System.Data.DataTable();
string server = "p";
string database = "IBpiopalog";
string security = "SSPI";
string sql = "select server from dbo.ServerList";
using(SqlConnection con = new SqlConnection("Data Source=" + server + ";Initial Catalog=" + database + ";Integrated Security=" + security))
{
con.Open();
using(SqlCommand cmd = new SqlCommand(sql, con))
{
using(SqlDataReader dr = cmd.ExecuteReader())
{
dt.Load(dr);
}
}
}
return dt;
}
あなたのメソッドがリストまたは文字列配列を返さないようにして、それからコンボボックスを作成してみませんか? – Tester101
私はできると思いますが、実際にそれを直接渡す方法はありませんか? –
もちろん、データアクセスレイヤーをUIタイプに結合したいのですか? – Oded