捕获警报对话框按钮事件

时间:2016-05-16 15:46:36

标签: c# xamarin mvvmcross

我添加了 Acr.UserDialogs 插件并调用如下,我可以看到一个带有OK按钮的简单提醒。到目前为止一切顺利,但我想知道如何捕获OK按钮点击事件?

public void Save()
{
  if (!isExit)
  {
     OnExit(this, null);
  }
  else
  {
     IsValid = false;
     Mvx.Resolve<IUserDialogs>().Alert("it is not valid");
  }
}

2 个答案:

答案 0 :(得分:2)

只需传递AlertConfig并设置OnOk操作。

var alertConfig = new AlertConfig {
    Message = "it is not valid",
    OkText = "Okely",
    OnOk = () => { Debug.WriteLine("ok pressed"); }
};

Mvx.Resolve<IUserDialogs>().Alert(alertConfig);

版本7.0 +的更新:

OnOk已重命名为OnAction,请参阅:https://github.com/aritchie/userdialogs/blob/master/src/Acr.UserDialogs/AlertConfig.cs#L16

var alertConfig = new AlertConfig {
    Message = "it is not valid",
    OkText = "Okely",
    OnAction = () => { Debug.WriteLine("ok pressed"); }
};

Mvx.Resolve<IUserDialogs>().Alert(alertConfig);

答案 1 :(得分:0)

在Arc.UserDialogs 7.0.1中,您需要按照以下方式进行操作:

var alertConfig = new AlertConfig
{
    Message = message,
    OkText = "AppSyncViewModel_Alert_Retry".Translate(),
    OnAction = YourAction
};
Mvx.IoCProvider.Resolve<IUserDialogs>().Alert(alertConfig);