Witam
Podczas programowanie w Visual Studio 2005 natrafiłem na mały problem.
Mam dwa zaprojektowane okna Form1, Form2.
Z menu w oknie Form1 wywołuję nowe okno Form2.
Chcąc wywołać funkcję znajdującą się w Form1 używam kod:
public partial class Form2 : Form
{
Form1 my_parent = new Form1();
private void button3_Click(object sender, EventArgs e)
{
my_parent.funkcja_update();
this.Close();
}
}
Kod Form1:
public partial class Form1 : Form
{
public void funkcja_update(){
my_grid_view_update();
}
private void my_grid_view_update()
{
SqlConnection connection = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=C:\\Bazadanych.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
connection.Open();
SqlCommand command = new SqlCommand("SELECT TOP 20 id,nazwa FROM Test WHERE id not in (SELECT TOP 10 id FROM Test ORDER BY id) ORDER BY id", connection);
SqlDataReader reader = command.ExecuteReader();
dataGridView1.ColumnCount = 2;
dataGridView1.Columns[0].Name = "ID";
dataGridView1.Columns[1].Name = "Nazwa";
dataGridView1.Rows.Clear();
try
{
while (reader.Read())
{
dataGridView1.Rows.Add(reader[0], reader[1]);
}
}
finally
{
reader.Close();
}
connection.Close();
}
Jednak po wywołaniu funkcji button3_Click(object sender, EventArgs e) w Form2 nie następuje żadna reakcja i tym samym zawartość dataGridView1 w Form1 nie jest odświeżona.
Z góry dziękuję za pomoc w rozwiązaniu problemu.