Pin To Start Pivot Item
-
11 Maret 2012 15:56
Hai, saya sedang membuat aplikasi di windows phone menggunakan pivot. Setiap isi dalam setiap pivot item itu berbeda, agar lebih mudah untuk mengakses isi dari setiap pivot item maka dipin lah setiap pivot item ke dalam start screen, yang saya tanyakan disini bagaimana caranya agar setiap pivot item dapat di pin ke dalam start screen ?
saya mencoba kode dibawah ini, namun ini tidak bekerja seperti seharusnya :
<Button x:Name="pintoStart" Margin="20,00,0,0" Height="80" Click="pinToStart_Clicked" Content="Pin To Start" />
private void pinToStart_Clicked(object sender, RoutedEventArgs e) { StandardTileData standardTileData = new StandardTileData(); standardTileData.BackgroundImage = null; standardTileData.Title = "Pinned by button"; standardTileData.Count = 26; standardTileData.BackTitle = "Pinned"; standardTileData.BackContent = "Secondary Tile"; standardTileData.BackBackgroundImage = null; ShellTile tiletopin = ShellTile.ActiveTiles.FirstOrDefault(x => x.NavigationUri.ToString().Contains("MainPage.xaml")); if (tiletopin == null) { ShellTile.Create(new Uri("/MainPage.xaml", UriKind.Relative), standardTileData); } else { MessageBox.Show("Already Pinned"); } }
Terima kasih sebelumya, mohon bantuannya :Dlank
Semua Balasan
-
16 Maret 2012 9:31Moderator
Halo Ilham Lank,
Terima kasih atas partisipasi anda dalam forum MSDN Indonesia!
Anda dapat menggunakan PivotItem yang dipilih saat ini sebagai parameter saat membuat Tile baru dan dalam metode OnNavigatedTo pada MainPage coba periksa parameter Url dan tentukan PivotItem mana harus dipilih.
Untuk rincian lengkap, lihat kode di bawah ini:
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
base.OnNavigatedTo(e);
if (this.NavigationContext.QueryString.ContainsKey("Param"))
{
string param = this.NavigationContext.QueryString["Param"];//Find "Param" this QueryString
pivot.SelectedIndex = int.Parse(param); //pivot is the PivotControl’s Name
}
}
private void button1_Click(object sender, RoutedEventArgs e)
{
StandardTileData standardTileData = new StandardTileData();
standardTileData.BackgroundImage = null;
standardTileData.Title = "Pinned by button";
standardTileData.Count = 26;
standardTileData.BackTitle = "Pinned";
standardTileData.BackContent = "Secondary Tile";
standardTileData.BackBackgroundImage = null;
ShellTile tiletopin = ShellTile.ActiveTiles.FirstOrDefault(x => x.NavigationUri.ToString().Contains("MainPage.xaml"));
if (tiletopin == null)
{
ShellTile.Create(new Uri("/MainPage.xaml?Param="+pivot.SelectedIndex, UriKind.Relative), standardTileData);
}
else
{
MessageBox.Show("Already Pinned");
}
}
Agnes Sannie [MSFT]
MSDN Community Support | Feedback to us
Get or Request Code Sample from Microsoft
Please remember to mark the replies as answers if they help and unmark them if they provide no help.- Ditandai sebagai Jawaban oleh Agnes SannieMicrosoft Contingent Staff, Moderator 16 Maret 2012 9:31