Как нажать кнопку при загрузке формы с помощью C#
Вопрос
Как мне нажать кнопку при загрузке пены с помощью C#?Моя кнопка называется: btnFacebookLogin
Я попробовал это следующим образом:
private void Form1_Shown(Object sender, EventArgs e)
{
btnFacebookLogin.PerformClick();
}
Я использую WinForms C# .NET 4
Решение
Обязательно свяжите своего обработчика после InitializeComponent() и для Загрузка событие
public Form1()
{
InitializeComponent();
Load += Form1_Shown;
}
private void Form1_Shown(Object sender, EventArgs e)
{
btnFacebookLogin.PerformClick();
}
Другие советы
Есть ли какая-то конкретная причина, по которой вам действительно нужно нажать на кнопку?
Я бы просто переместил код в событии click в функцию, а затем вызвал эту функцию как из события load, так и из события click.Это позволит избежать необходимости звонить 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
}
Ты можешь это сделать :
public void Form1_Load(object s, EventArgs e){
btnFacebookLogin.PerformClick();
}
И я считаю, что вы знаете, что следующий обработчик событий должен существовать в вашем коде позади :
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show("hi");
}
@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>
Выход :