繁体   English   中英

在Xamarin.Forms中以编程方式引发控件事件

[英]Raise control event programmatically in Xamarin.Forms

我在XAML中定义了一个按钮:

<Button x:Name="loginButton" Text="Login" Clicked="OnLoginButtonClicked" />

是否可以通过编程引发Clicked事件? 当然,我可以调用OnLoginButtonClicked ,但是我对如何引发Clicked事件本身很感兴趣。

如果您只想调用Clicked操作,则可以执行以下操作:

    var b = new Button();

    b.Clicked += (x, y) =>
    {
        //Your method here
    };

    var t = b as IButtonController;

    t.SendClicked(); //This will call the action

重要的是要注意这不是正确的选择。 如前所述,首选使用实际方法。

您可以通过事件处理程序或代码中的任何其他位置调用DoSomething

void OnLoginButtonClicked(object sender, EventArgs e)
{
    DoSomething ();
}

private void DoSomething()
{
    //Click code here.
}
  1. 关联委托方法

     testButton3.TouchUpInside += HandleTouchUpInside; 
  2. 添加方法

     void HandleTouchUpInside (object sender, EventArgs ea) { new UIAlertView("Touch3", "TouchUpInside handled", null, "OK", null).Show(); } 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM