Frage

Wie klicke ich mit C# auf eine Schaltfläche beim Schaumladen?Mein Button heißt: btnFacebookLogin

Folgendes habe ich versucht:

private void Form1_Shown(Object sender, EventArgs e) 
{
   btnFacebookLogin.PerformClick(); 
}

Ich verwende WinForms C# .NET 4

War es hilfreich?

Lösung

Stellen Sie sicher, dass Sie Ihren Handler verlinken nach InitializeComponent() und to Belastung Ereignis

public Form1()
{
   InitializeComponent();
   Load += Form1_Shown;
}

private void Form1_Shown(Object sender, EventArgs e) 
{
   btnFacebookLogin.PerformClick(); 
}

Andere Tipps

Gibt es einen bestimmten Grund, warum Sie tatsächlich auf die Schaltfläche klicken müssen?

Ich würde einfach den Code im Click-Ereignis in eine Funktion verschieben und diese Funktion dann sowohl vom Load-Ereignis als auch vom Click-Ereignis aus aufrufen.Es wird die Notwendigkeit umgehen, anzurufen click()

Zum Beispiel:

private void Form1_Shown(Object sender, EventArgs e) 
{
   DoFacebookLogin();
}

private void btnFacebookLogin_Click(Object sender, EventArgs e)
{
    DoFacebookLogin();
}

private void DoFacebookLogin()
{
    //Do Work here
}

Du kannst das :

public void Form1_Load(object s, EventArgs e){
  btnFacebookLogin.PerformClick();
}

Und ich gehe davon aus, dass Sie wissen, dass der folgende Ereignishandler in Ihrem Code dahinter vorhanden sein sollte:

    private void button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show("hi");
    }

@PriceCheaperton:Sie können ein Ereignis von einem anderen Ereignis aus aufrufen. Das einfachste Beispiel finden Sie hier.

C# :

public partial class WebForm1 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Button1_Click(sender, e);
    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        Response.Write("Calling event from an event...");
    }
}

ASPX:

<body>
<form id="form1" runat="server">
<div>
    <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
</div>
</form>

Ausgabe :enter image description here

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top