2017-03-01 38 views
0

这里是我的一个Xamarin以往的结构构成页:Xamarin表格 - 允许两页共享相同的代码隐藏

LoginPage.cs

/// <summary> 
/// UI Code 
/// </summary> 
public partial class LoginPage : ContentPage 
{ 
    /// <summary> 
    /// Created the view content 
    /// </summary> 
    private void InitializeComponent() 
    { 
     // Controls 
    } 
} 

LoginPageCode.cs

/// <summary> 
/// Code Behind 
/// </summary> 
public partial class LoginPage 
{ 
    public LoginPage() 
    { 
     InitializeComponent(); 
    } 

    // Events 
} 

这对大多数情况下工作正常,但我第一次开发的手机和平板电脑。

在这种情况下,手机与平板电脑的登录页面的UI会非常不同,因此我想根据设备成语推送完全不同的页面。

例子:现在

if (Device.Idiom == TargetIdiom.Phone) 
{ 
    await Navigation.PushAsync(new LoginPhonePage()); 
} 
else 
{ 
    await Navigation.PushAsync(new LoginTabletPage()); 
} 

,它只有真是日新月异,所以我想后面保持相同的代码,这两个页面的UI代码。

什么是共享两个页面相同的代码隐藏的最佳方式,所以我不必为每个UI页面创建一个?

+1

我知道这不完全是你问什么,但实现MVVM在您的应用程序中,并将您的业务代码移动到ViewModel将允许您使用相同的逻辑来处理不同的页面,而且工作量很少。 – apineda

回答

相关问题