DeviceFamily XAML Views(一)

DeviceFamily Veiws 可以为特定的设备(Mobile、Desktop等)制作特定的XAML视图,这种方式可以完全定制XMAL和共享后台代码。

  以 Mobile 和 Desktop 为例:

  • 新建两个文件夹 DeviceFamily-Miobile 和 DeviceFamily-Desktop ;

                     

 

  • 然后在两个文件夹中都添加一个 MainPage.xaml ;

                 

  • 如果在 Mobile 设备上运行应用程序,它将从DeviceFamily-Mobile/MainPage.xaml 加载 XMAL; 如果在 Desktop 设备上运行应用程序,它将从DeviceFamily-Desktop/MainPage.xaml 加载 XMAL; 对于其他设备将加载主文件夹下的 MainPage.xaml;

 

  • Example
  • DeviceFamily-Mobile/MainPage.xaml
 1 Page
 2     x:Class="_DeviceFamily.DeviceFamily_Mobile.MainPage"
 3     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
 4     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
 5     xmlns:local="using:_DeviceFamily.DeviceFamily_Mobile"
 6     xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
 7     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
 8     mc:Ignorable="d">
 9 
10     <Grid Background="Blue">
11         <TextBlock Text="Hello DeviceFamily-Mobile" VerticalAlignment="Center" FontSize="24" />
12     </Grid>
13 </Page>
  • Mobile 上的运行效果

                         

 

  • DeviceFamily-Desktop/MainPage.xaml
 1 <Page
 2     x:Class="_DeviceFamily.DeviceFamily_Desktop.MainPage"
 3     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
 4     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
 5     xmlns:local="using:_DeviceFamily.DeviceFamily_Desktop"
 6     xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
 7     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
 8     mc:Ignorable="d">
 9 
10     <Grid Background="Red">
11         <TextBlock VerticalAlignment="Center" Text="Hello DeviceFamily-Desktop" FontSize="56" />
12     </Grid>
13 </Page>
  • Desktop 上的运行效果

                     

 

  • 主文件下的 MainPage.xaml
<Page
    x:Class="_DeviceFamily.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:_DeviceFamily"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">

    <Grid Background="Yellow">
        <TextBlock VerticalAlignment="Center" Text="Hello DeviceFamily-Desktop" FontSize="48" />
    </Grid>
</Page>
  •  运行效果(由于没有 Table  之类的第三种设备,所以此运行效果省略 gg)

 

posted @ 2016-09-09 20:54  Godfunc  阅读(298)  评论(0编辑  收藏  举报