如何从按钮调用异步方法

rog*_*nin 3 xamarin.ios xamarin

我试图使用故事板设计器使用Alpha中最新的Xamrian调用aysnc方法,但我似乎无法从设计者已声明的按钮单击中调用该方法。CS

async public  void Createuser ()
{        
    var user = new ParseUser ()
    {
        Username = txtUserName.Text,
        Password = txtPassword.Text,
        Email = txtEmail.Text
    };

    await user.SignUpAsync ();
}
Run Code Online (Sandbox Code Playgroud)

我希望从中调用方法的按钮是这个

partial void btnSave_TouchUpInside (UIButton sender)
{
    Createuser();        
}
Run Code Online (Sandbox Code Playgroud)

但是,如果我们看以下我的designer.cs文件

[Action ("btnSave_TouchUpInside:")]
[GeneratedCode ("iOS Designer", "1.0")]
partial void btnSave_TouchUpInside (UIButton sender);
Run Code Online (Sandbox Code Playgroud)

val*_*ero 5

根据您的问题,我认为您不能仅将async修饰符添加到事件处理程序中吗?

async partial void btnSave_TouchUpInside (UIButton sender)
{
    await Createuser();        
}
Run Code Online (Sandbox Code Playgroud)

通常,我会使用Lambda内联点击:

btnSave.TouchUpInside += async (sender, e) => 
{
    await Createuser(); 
};
Run Code Online (Sandbox Code Playgroud)