4

如何使用 C# 单击泡沫加载按钮?我的按钮被称为:btnFacebookLogin

我已经尝试过以下操作:

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

我正在使用 WinForms C# .NET 4

4

4 回答 4

7

请务必在InitializeComponent()之后链接您的处理程序并加载事件

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

private void Form1_Shown(Object sender, EventArgs e) 
{
   btnFacebookLogin.PerformClick(); 
}
于 2014-01-11T10:37:51.077 回答
3

您需要实际单击按钮是否有特定原因?

我只是将点击事件中的代码移动到一个函数中,然后从加载事件和点击事件中调用该函数。它将绕过调用的需要click()

例如:

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

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

private void DoFacebookLogin()
{
    //Do Work here
}
于 2014-01-11T10:33:54.070 回答
2

你可以这样做 :

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

而且我认为您知道以下事件处理程序应该存在于您的代码中:

    private void button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show("hi");
    }
于 2014-01-11T10:33:31.027 回答
-1

@PriceCheaperton:您可以从另一个事件中调用一个事件,最简单的示例在这里。

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>

输出 : 在此处输入图像描述

于 2014-01-11T10:51:47.873 回答