windows phone 7 學習筆記 五 TileSample

來源:互聯網
上載者:User
WP 7 為應用程式設定為瓦片.

using System;using System.Collections.Generic;using System.Linq;using System.Net;using System.Windows;using System.Windows.Controls;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Animation;using System.Windows.Shapes;using Microsoft.Phone.Controls;using Microsoft.Phone.Shell;namespace WPTileSample{    public partial class MainPage : PhoneApplicationPage    {        // Constructor        public MainPage()        {            InitializeComponent();        }        private static readonly string SecondaryTileUriSource = "Source=SeconaryTile";        protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)        {            base.OnNavigatedTo(e);            //尋找當前是否是瓦片            ShellTile secondaryTile = this.FindTile(SecondaryTileUriSource);            this.cbShowTile.IsChecked = secondaryTile != null;        }        /// <summary>        /// 尋找當前名稱是否在瓦片中        /// </summary>        /// <param name="partOfUri"></param>        /// <returns></returns>        private ShellTile FindTile(string partOfUri)        {             //當前應該程式是不是瓦片            ShellTile shellTile = ShellTile.ActiveTiles.FirstOrDefault(                tile => tile.NavigationUri.ToString().Contains(partOfUri));            return shellTile;        }        private void cbShowTile_Checked(object sender, RoutedEventArgs e)        {            // secondary tiles can be created only as the result            // of user input in an application            ShellTile tile = this.FindTile(SecondaryTileUriSource);            if (tile == null)            {                // because the UI will navigate to Start                // when a new secondary tile is created                // only one secondary tile can be created at a time                StandardTileData tileData = this.GetSecondaryTileData();                // having a unique NavigationUri is necessary for distinguishing this tile                string tileUri = string.Concat("/MainPage.xaml?", SecondaryTileUriSource);                ShellTile.Create(new Uri(tileUri, UriKind.Relative), tileData);            }        }        //刪除瓦片        private void cbShowTile_Unchecked(object sender, RoutedEventArgs e)        {            ShellTile tile = this.FindTile(SecondaryTileUriSource);            if (tile != null)            {                tile.Delete();                MessageBox.Show("Secondary tile deleted.");            }        }        /// <summary>        /// 設定瓦片        /// </summary>        /// <returns></returns>        private StandardTileData GetSecondaryTileData()        {            StandardTileData tileData = new StandardTileData            {                Title = "Secondary Tile",                BackgroundImage = new Uri("/Images/logo.png", UriKind.Relative),                Count = 5,                BackTitle = "Secondary Tile",                BackBackgroundImage = new Uri("", UriKind.Relative),                BackContent = "WPG Add Remove Tile Sample"            };            return tileData;        }    }}


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.