W jaki sposób korzystać z comboBox który jest w innej klasie?
Chce uzupełnić mój comboBox wartościami z bazy.
Można to zrobić tak:
public Form1()
{
InitializeComponent();
string connString = // ścieżka do mojej bazy w Access (mdb);
OleDbConnection connection = new OleDbConnection(connString);
connection.Open();
string query = "SELECT * FROM Wydawnictwa";
OleDbCommand command = new OleDbCommand(query, connection);
OleDbDataAdapter AdapterTabela = new OleDbDataAdapter(command);
DataSet data = new DataSet();
AdapterTabela.Fill(data, "Wydawnictwa");
int ileRekordow = data.Tables["Wydawnictwa"].Rows.Count;
// Chodzi o ten fragment ---------------------------
comboBoxWydawnictwo.Items.Clear();
for (int i = 0; i < ileRekordow; i++)
{
string wartosc = data.Tables["Wydawnictwa"].Rows[i]["ID"].ToString();
wartosc += " " + data.Tables["Wydawnictwa"].Rows[i]["nazwa"].ToString();
comboBoxWydawnictwo.Items.Add(wartosc);
}
// Chodzi o ten fragment ---------------------------
connection.Close();
}
Jednak chciałbym nie pisać całego kodu bezpośrednio w public Form1() { <kod>}.
Chciałbym umieścić ten kod w metodzie w oddzielnej klasie, ale wtedy nie wiem jak dostać się do obiektu comboBox, ewentualnie go przekazać referencyjnie do metody?
Ps. Nazwa moojego obiektu comboBoxWydawnictwo