sql >> Databasteknik >  >> RDS >> Mysql

Anropa en metod från ett annat formulär i C#

Börja med att slå in din uppdateringskod i en egen metod och anropa den från din klickhändelsehanterarmetod, så här:

    private void btnRefresh_Click(object sender, EventArgs e) 
    { 
        this.RefreshData();
    }

    public void RefreshData()
    {
        GVThesis.DataSource = thesisRepository.GetThesis(); 
        GVThesis.Refresh(); 
    }

Sedan, förutsatt att du instansierar och startar det nya formuläret (Form2) från din Form1, gå helt enkelt in i koden för Form2 och skapa dig en ny konstruktoröverbelastning som kommer att acceptera en referens till Form1, och lagra den i en privat variabel, som så. :

public partial class Form2 : Form
{
    private Form1 frm1;

    public Form2()
    {
        InitializeComponent();
    }

    public Form2(Form1 otherForm)
    {
        InitializeComponent();
        this.frm1 = otherForm;
    }
}

Sedan kan du anropa "uppdateringen" var du vill i Form2 så här:

this.frm1.RefreshData();


REDIGERA:

Jag skapade ett litet prov, jag kan inte ladda upp det här...men här är en skärmdump av både själva programmet i VS, samt en skärmdump av resultatet av att köra det och utföra funktionen ...förhoppningsvis hjälper det.

Programmet (zooma din vy om den verkar för liten)


Resultatet:




  1. PHP/MySQL:Modellera upprepande händelser i en databas men fråga efter datumintervall

  2. MySQL batchfrågor med gräns

  3. Få åtkomst till MAMPs MySQL från Terminal

  4. SQLite - Ta bort data