C# 表单:按代码中的后退按钮
在Xamarin.Forms中是否有方法从代码中按back按钮?我尝试调用OnBackButtonPressed和SendBackButtonPressed,但这不起作用。调用OnBackButtonPressed事件,但不执行back操作 Call onback按钮按下:C# 表单:按代码中的后退按钮,c#,.net,xamarin,xamarin.forms,cross-platform,C#,.net,Xamarin,Xamarin.forms,Cross Platform,在Xamarin.Forms中是否有方法从代码中按back按钮?我尝试调用OnBackButtonPressed和SendBackButtonPressed,但这不起作用。调用OnBackButtonPressed事件,但不执行back操作 Call onback按钮按下: if (_currentQuestionnaireGroup != null) await RefreshDataAsync(); else { App.QuestionnaireOverviewPage.IsD
if (_currentQuestionnaireGroup != null)
await RefreshDataAsync();
else
{
App.QuestionnaireOverviewPage.IsDirty = true;
this.OnBackButtonPressed();
}
活动:
protected override bool OnBackButtonPressed()
{
if (_questionnaireHandler != null)
App.QuestionnaireOverviewPage.IsDirty = true;
return true;
}
对不起,英语不好
在您的事件中,更改返回true;用于返回基。OnBackButtonPressed
当返回true时,设备上的“返回”操作将被取消
对不起,英语不好
在您的事件中,更改返回true;用于返回基。OnBackButtonPressed
当返回true时,设备上的“返回”操作将被取消。这并不能解决问题。当我在android上按下hardware backbutton时,您的解决方案就起作用了。但我有一个定制的后退按钮。当我单击此自定义按钮并仅调用OnBackButtonPressed时,不会执行back操作。两者都点击了OnBackButtonPressed-Event,但只有硬件后退按钮执行真正的后退操作。如果我正确启动,我应该使用Navigation.popsync来执行此操作。你能发布你的全部代码吗?我将尝试在这里模拟您的场景,并获得诀窍。是的,使用Navigation.PopAsync是正确的方法并解决了问题。我有一些本地android开发的经验,在那里你可以调用finish或onBackPressed来关闭当前页面。在Xamarin.Forms中,必须调用Navigation.popsync。这并不能解决问题。当我在android上按下hardware backbutton时,您的解决方案就起作用了。但我有一个定制的后退按钮。当我单击此自定义按钮并仅调用OnBackButtonPressed时,不会执行back操作。两者都点击了OnBackButtonPressed-Event,但只有硬件后退按钮执行真正的后退操作。如果我正确启动,我应该使用Navigation.popsync来执行此操作。你能发布你的全部代码吗?我将尝试在这里模拟您的场景,并获得诀窍。是的,使用Navigation.PopAsync是正确的方法并解决了问题。我有一些本地android开发的经验,在那里你可以调用finish或onBackPressed来关闭当前页面。在Xamarin.Forms中,必须调用Navigation.PopAsync。