豆瓣电台WP7客户端 开发记录6

今天把导航改成HubTile模式了,见图:

 

XAML:

< Grid  x:Name ="ContentPanel"  Grid.Row ="1"  
               HorizontalAlignment
="Left"
               VerticalAlignment
="Center"
              Margin
="10,0,10,0" >
            
< Grid.ColumnDefinitions >
                
< ColumnDefinition />
                
< ColumnDefinition />
            
</ Grid.ColumnDefinitions >
            
< Grid.RowDefinitions >
                
< RowDefinition  Height ="Auto" />
                
< RowDefinition  Height ="Auto" />
                
< RowDefinition  Height ="Auto" />
            
</ Grid.RowDefinitions >
            
< toolkit:HubTile  Grid.Row ="0"  Grid.Column ="0"  
                              Margin
="12,12,0,0"
                             x:Name
="HY"   ManipulationCompleted ="ManipulationCompleted" />
            
< toolkit:HubTile  Grid.Row ="0"  Grid.Column ="1"
                              Margin
="12,12,0,0"
                             x:Name
="OM"   ManipulationCompleted ="ManipulationCompleted" />
            
< toolkit:HubTile  Grid.Row ="1"  Grid.Column ="0"
                              Margin
="12,12,0,0"
                             x:Name
="RY"   ManipulationCompleted ="ManipulationCompleted" />
            
< toolkit:HubTile  Grid.Row ="1"  Grid.Column ="1"
                              Margin
="12,12,0,0"
                              x:Name
="HanY"   ManipulationCompleted ="ManipulationCompleted" />
            
< toolkit:HubTile  Grid.Row ="2"  Grid.Column ="0"
                              Margin
="12,12,0,0"
                              x:Name
="YY"  ManipulationCompleted ="ManipulationCompleted"   />
            
< toolkit:HubTile  Grid.Row ="2"  Grid.Column ="1"
                             Margin
="12,12,0,0"  
                              x:Name
="FAV"   ManipulationCompleted ="ManipulationCompleted"   />

</Grid> 

 

cs:读取所有频道第一首歌的专辑封面

  1    public  ChannelTile()
  2          {
  3              InitializeComponent();
  4              TouchPanel.EnabledGestures  =  GestureType.Tap  |  GestureType.HorizontalDrag;
  5               if  ( ! PlayListHelper.IsInited)
  6              {
  7                  PlayListHelper.InitChannelComplete  +=   new  Action(PlayListHelper_InitChannelComplete);
  8                  PlayListHelper.InitChannel(); // 初始化播放列表
  9              }
 10          }
 11 
 12           ///   <summary>
 13           ///  初始化tile的image跟title
 14           ///   </summary>
 15           void  PlayListHelper_InitChannelComplete()
 16          {
 17              var list  =  PlayListHelper.GetEachChannel1stSong(); // 获取所有频道的第一首歌曲
 18              var song  =  list.Where(s  =>  s.channel  ==  ( int )ChannelType.华语).ToList();
 19               if  (song  !=   null   &&  song.Count  >   0 )
 20              {
 21                  var s  =  song[ 0 ];
 22                  HY.Source  =   new  BitmapImage( new  Uri(s.picture, UriKind.Absolute));
 23                  HY.Title  =  ChannelType.华语.ToString();
 24                  HY.Message = s.artist + " - " + s.title;
 25              }
 26               else
 27              {
 28                  
HY .Title  =  ChannelType.华语.ToString();
 29                  
HY .Message  =   " No Song! " ;
 30              }
 31 
 32 
 33              song  =  list.Where(s  =>  s.channel  ==  ( int )ChannelType.欧美).ToList();
 34               if  (song  !=   null   &&  song.Count  >   0 )
 35              {
 36                  var s  =  song[ 0 ];
 37                  OM.Source  =   new  BitmapImage( new  Uri(s.picture, UriKind.Absolute));
 38                  OM.Title  =  ChannelType.欧美.ToString();
 39                  OM.Message  =  s.artist  +   " - "   +  s.title;
 40              }
 41               else
 42              {
 43                  OM.Title  =  ChannelType.欧美.ToString();
 44                  OM.Message  =   " No Song! " ;
 45              }
 46 
 47 
 48              song  =  list.Where(s  =>  s.channel  ==  ( int )ChannelType.韩语).ToList();
 49               if  (song  !=   null   &&  song.Count  >   0 )
 50              {
 51                  var s  =  song[ 0 ];
 52                  HanY.Source  =   new  BitmapImage( new  Uri(s.picture, UriKind.Absolute));
 53                  HanY.Title  =  ChannelType.韩语.ToString();
 54                  HanY.Message  =  s.artist  +   " - "   +  s.title;
 55              }
 56               else
 57              {
 58                  HanY.Title  =  ChannelType.韩语.ToString();
 59                  HanY.Message  =   " No Song! " ;
 60              }
 61 
 62              song  =  list.Where(s  =>  s.channel  ==  ( int )ChannelType.日语).ToList();
 63               if  (song  !=   null   &&  song.Count  >   0 )
 64              {
 65                  var s  =  song[ 0 ];
 66                  RY.Source  =   new  BitmapImage( new  Uri(s.picture, UriKind.Absolute));
 67                  RY.Title  =  ChannelType.日语.ToString();
 68                  RY.Message  =  s.artist  +   " - "   +  s.title;
 69              }
 70               else
 71              {
 72                  RY.Title  =  ChannelType.日语.ToString();
 73                  RY.Message  =   " No Song! " ;
 74              }
 75 
 76              song  =  list.Where(s  =>  s.channel  ==  ( int )ChannelType.粤语).ToList();
 77               if  (song  !=   null   &&  song.Count  >   0 )
 78              {
 79                  var s  =  song[ 0 ];
 80                  YY.Source  =   new  BitmapImage( new  Uri(s.picture, UriKind.Absolute));
 81                  YY.Title  =  ChannelType.粤语.ToString();
 82                  YY.Message  =  s.artist  +   " - "   +  s.title;
 83              }
 84               else
 85              {
 86                  YY.Title  =  ChannelType.粤语.ToString();
 87                  YY.Message  =   " No Song! " ;
 88              }
 89 
 90              song  =  list.Where(s  =>  s.channel  ==  ( int )ChannelType.最爱).ToList();
 91               if  (song  !=   null && song.Count > 0 )
 92              {
 93                  var s  =  song[ 0 ];
 94                  FAV.Source  =   new  BitmapImage( new  Uri(s.picture, UriKind.Absolute));
 95                  FAV.Title  =  ChannelType.最爱.ToString();
 96                  FAV.Message  =  s.artist  +   " - "   +  s.title;
 97              }
 98               else
 99              {
100                  FAV.Title  =  ChannelType.最爱.ToString();
101                  FAV.Message  =   " No Song! " ;
102              }
103                 

104         }

 

点击频道导航到MainPage:

 1 HubTile ht = sender as HubTile;  

2  this .NavigationService.Navigate( new  Uri( " /MainPage.xaml?Channle= "   +  ht.Title, UriKind.Relative));

转载于:https://www.cnblogs.com/kklldog/archive/2011/09/09/2172018.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值