如何避免导航堆栈上已存在打开页面?

Mik*_*ish 4 c# xamarin.ios xamarin.android portable-class-library xamarin.forms

我正在使用Xamarin.forms,有时候用户会在同一个按钮上点击两次,我搜索一下以避免打开同一页两次,也许在第一次点击后禁用按钮就可以正常工作,但我正在搜索以避免打开同一页面页面已存在于导航堆栈上.

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

pin*_*dax 11

if (Navigation.NavigationStack.Count == 0 ||
    Navigation.NavigationStack.Last().GetType() != typeof(CustomerPage))
{
    await Navigation.PushAsync(new CustomerPage(), true);
}
Run Code Online (Sandbox Code Playgroud)