3

我使用Xamarin.forms,有的时候用户会点击两次相同的按钮,我搜索的地方,避免打开同一个页面两次,也许禁用按钮后,第一次点击将正常工作,但我正在寻找的地方,避免如果导航堆栈中已经存在页面,请打开相同页面。如何避免导航堆栈上已经存在打开的页面?

btnCustomerPage.Clicked += (object sender, EventArgs e) => 
{ 
//CustomerPage already Exist on Navigation Stack,So user already open it. 
Navigation.PushAsync(new CustomerPage(); 
}; 
+0

就注意到了这一点,用一个更好的解决方案已经回应:http://stackoverflow.com/a/42354382/1771254 – apineda

+0

是的,我看到.thanks –

回答

5
if (Navigation.NavigationStack.Count == 0 || 
    Navigation.NavigationStack.Last().GetType() != typeof(CustomerPage)) 
{ 
    await Navigation.PushAsync(new CustomerPage(), true); 
} 
+0

它工作正常..谢谢 –