JumpList Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mewakili daftar item dan tugas yang ditampilkan sebagai menu pada tombol bilah tugas Windows 7.
public ref class JumpList sealed : System::ComponentModel::ISupportInitialize
[System.Windows.Markup.ContentProperty("JumpItems")]
public sealed class JumpList : System.ComponentModel.ISupportInitialize
[System.Windows.Markup.ContentProperty("JumpItems")]
[System.Security.SecurityCritical]
public sealed class JumpList : System.ComponentModel.ISupportInitialize
[<System.Windows.Markup.ContentProperty("JumpItems")>]
type JumpList = class
interface ISupportInitialize
[<System.Windows.Markup.ContentProperty("JumpItems")>]
[<System.Security.SecurityCritical>]
type JumpList = class
interface ISupportInitialize
Public NotInheritable Class JumpList
Implements ISupportInitialize
- Warisan
-
JumpList
- Atribut
- Penerapan
Contoh
Contoh berikut menunjukkan aplikasi dengan Jump List. Aplikasi ini memiliki tiga tombol yang memungkinkan Anda menambahkan tugas ke Jump List saat ini, menghapus konten Jump List, dan menerapkan Jump List baru ke aplikasi.
Contoh berikut menunjukkan cara mendeklarasikan JumpList dalam markup. berisi JumpList dua JumpTask tautan dan satu JumpPath. Menerapkan ke JumpPath shell akan gagal jika aplikasi tidak terdaftar untuk menangani ekstensi nama file .txt.
<Application x:Class="JumpListSample.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="MainWindow.xaml">
<JumpList.JumpList>
<JumpList ShowRecentCategory="True"
ShowFrequentCategory="True"
JumpItemsRejected="JumpList_JumpItemsRejected"
JumpItemsRemovedByUser="JumpList_JumpItemsRemovedByUser">
<JumpTask Title="Notepad"
Description="Open Notepad."
ApplicationPath="C:\Windows\notepad.exe"
IconResourcePath="C:\Windows\notepad.exe"/>
<JumpTask Title="Read Me"
Description="Open readme.txt in Notepad."
ApplicationPath="C:\Windows\notepad.exe"
IconResourcePath="C:\Windows\System32\imageres.dll"
IconResourceIndex="14"
WorkingDirectory="C:\Users\Public\Documents"
Arguments="readme.txt"/>
<JumpPath Path="C:\Users\Public\Documents\readme.txt" />
</JumpList>
</JumpList.JumpList>
</Application>
Contoh berikut menunjukkan halaman code-behind untuk App.xaml. Kode ini menangani JumpItemsRejected peristiwa dan JumpItemsRemovedByUser .
using System.Text;
using System.Windows;
using System.Windows.Shell;
namespace JumpListSample
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : Application
{
private void JumpList_JumpItemsRejected(object sender, System.Windows.Shell.JumpItemsRejectedEventArgs e)
{
StringBuilder sb = new StringBuilder();
sb.AppendFormat("{0} Jump Items Rejected:\n", e.RejectionReasons.Count);
for (int i = 0; i < e.RejectionReasons.Count; ++i)
{
if (e.RejectedItems[i].GetType() == typeof(JumpPath))
sb.AppendFormat("Reason: {0}\tItem: {1}\n", e.RejectionReasons[i], ((JumpPath)e.RejectedItems[i]).Path);
else
sb.AppendFormat("Reason: {0}\tItem: {1}\n", e.RejectionReasons[i], ((JumpTask)e.RejectedItems[i]).ApplicationPath);
}
MessageBox.Show(sb.ToString());
}
private void JumpList_JumpItemsRemovedByUser(object sender, System.Windows.Shell.JumpItemsRemovedEventArgs e)
{
StringBuilder sb = new StringBuilder();
sb.AppendFormat("{0} Jump Items Removed by the user:\n", e.RemovedItems.Count);
for (int i = 0; i < e.RemovedItems.Count; ++i)
{
sb.AppendFormat("{0}\n", e.RemovedItems[i]);
}
MessageBox.Show(sb.ToString());
}
}
}
Contoh berikut menunjukkan markup yang digunakan untuk membuat antarmuka pengguna aplikasi.
<Window x:Class="JumpListSample.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Jump List Sample" Height="240" Width="500">
<Window.Resources>
<Style TargetType="Button">
<Setter Property="Width" Value="200" />
<Setter Property="Margin" Value="5" />
</Style>
</Window.Resources>
<Grid>
<StackPanel>
<Button Content="Add Task to JumpList" Click="AddTask" />
<Button Content="Clear Jump List" Click="ClearJumpList"/>
<Button Content="Set New Jump List" Click="SetNewJumpList" />
</StackPanel>
</Grid>
</Window>
Contoh berikut menunjukkan halaman code-behind untuk MainWindow.xaml. Kode ini menunjukkan cara memodifikasi, menghapus, dan membuat JumpList dalam kode prosedural. Untuk Jump List baru, metode SetJumpList statis dipanggil untuk mengaitkan JumpList dengan aplikasi saat ini dan menerapkan JumpList ke shell Windows.
using System;
using System.IO;
using System.Windows;
using System.Windows.Shell;
namespace JumpListSample
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void AddTask(object sender, RoutedEventArgs e)
{
// Configure a new JumpTask.
JumpTask jumpTask1 = new JumpTask();
// Get the path to Calculator and set the JumpTask properties.
jumpTask1.ApplicationPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.SystemX86), "calc.exe");
jumpTask1.IconResourcePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.SystemX86), "calc.exe");
jumpTask1.Title = "Calculator";
jumpTask1.Description = "Open Calculator.";
jumpTask1.CustomCategory = "User Added Tasks";
// Get the JumpList from the application and update it.
JumpList jumpList1 = JumpList.GetJumpList(App.Current);
jumpList1.JumpItems.Add(jumpTask1);
JumpList.AddToRecentCategory(jumpTask1);
jumpList1.Apply();
}
private void ClearJumpList(object sender, RoutedEventArgs e)
{
JumpList jumpList1 = JumpList.GetJumpList(App.Current);
jumpList1.JumpItems.Clear();
jumpList1.Apply();
}
private void SetNewJumpList(object sender, RoutedEventArgs e)
{
//Configure a new JumpTask
JumpTask jumpTask1 = new JumpTask();
// Get the path to WordPad and set the JumpTask properties.
jumpTask1.ApplicationPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), "write.exe");
jumpTask1.IconResourcePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), "write.exe");
jumpTask1.Title = "WordPad";
jumpTask1.Description = "Open WordPad.";
jumpTask1.CustomCategory = "Jump List 2";
// Create and set the new JumpList.
JumpList jumpList2 = new JumpList();
jumpList2.JumpItems.Add(jumpTask1);
JumpList.SetJumpList(App.Current, jumpList2);
}
}
}
Keterangan
Taskbar Windows 7 menyediakan fungsionalitas yang ditingkatkan untuk memulai program langsung dari tombol taskbar dengan menggunakan Jump Lists. Jump List juga digunakan di menu Mulai Windows 7. Anda mengakses Jump List dengan mengklik kanan tombol taskbar atau dengan mengklik panah di samping program di menu Mulai. Untuk informasi selengkapnya tentang Jump Lists, lihat bagian Taskbar dari Panduan Interaksi Pengalaman Pengguna Windows.
Kelas JumpList menyediakan pembungkus terkelola untuk fungsionalitas Jump List di taskbar Windows 7 dan mengelola data yang diteruskan ke shell Windows. Fungsionalitas yang diekspos oleh kelas JumpList tidak tersedia dalam versi Windows yang lebih lama dari Windows 7. Aplikasi yang menggunakan kelas JumpList akan berjalan di versi Windows lain, tetapi Jump List tidak akan tersedia. Untuk informasi selengkapnya tentang SHELL Windows dan API Jump List asli, lihat Ekstensi Taskbar.
Ilustrasi berikut menunjukkan Jump List untuk Windows Media Player, dengan item dalam kategori Tasks dan Frequent.
Windows Media Player Jump List
Mengonfigurasi Jump List
Jump List dapat berisi dua jenis item, JumpTask dan JumpPath. JumpTask adalah tautan ke program dan merupakan JumpPath tautan ke file. Anda dapat memisahkan item secara visual dalam Jump List dengan membuat JumpTask item yang tidak memiliki Title dan CustomCategory ditentukan. JumpTask Kosong ini akan ditampilkan sebagai garis horizontal di Jump List.
Nota
Jika jenis file yang ditentukan dalam JumpPath tidak terdaftar di aplikasi Anda, file tidak akan muncul di Jump List. Misalnya, jika Anda menambahkan JumpPath poin tersebut ke file .txt, aplikasi Anda harus didaftarkan untuk menangani file .txt. Untuk informasi selengkapnya, lihat Pengantar Asosiasi File.
Item lompat ditempatkan ke dalam kategori di JumpList. Secara default, JumpItem ditampilkan dalam kategori Tugas . Atau, Anda dapat menentukan CustomCategory untuk JumpItem.
Anda dapat menentukan apakah kategori Terbaru dan Sering standar ditampilkan di JumpList dengan mengatur ShowRecentCategory properti dan ShowFrequentCategory . Konten kategori ini dikelola oleh shell Windows. Karena kategori ini mungkin berisi banyak data yang sama, Anda biasanya menampilkan satu atau yang lain di JumpList, tetapi tidak keduanya. Windows secara otomatis mengelola item terbaru jika dibuka melalui kotak dialog file umum atau digunakan untuk membuka aplikasi melalui asosiasi jenis file. Saat item diakses melalui Jump List, Anda dapat memberi tahu shell Windows untuk menambahkan item ke kategori Recent dengan memanggil metode AddToRecentCategory.
Menerapkan Jump List ke Windows Shell
Anda tidak dapat mengakses Jump List shell secara langsung atau membaca kontennya ke JumpList dalam kelas. Sebagai gantinya, kelas JumpList menyediakan representasi Jump List yang dapat Anda kerjakan, lalu berlaku untuk shell Windows. Anda biasanya membuat JumpList dan mengaturnya satu kali ketika aplikasi pertama kali dijalankan. Namun, Anda dapat memodifikasi atau mengganti pada JumpList waktu proses.
Ketika Anda telah mengatur properti JumpList, Anda harus menerapkan JumpList ke shell Windows sebelum kontennya muncul di Taskbar Jump List. Ini dilakukan secara otomatis ketika JumpList pertama kali dilampirkan ke aplikasi, baik di XAML atau dalam panggilan ke SetJumpList metode . Jika Anda mengubah konten JumpList pada waktu proses, Anda harus memanggil metode Apply untuk menerapkan kontennya saat ini ke shell Windows.
Mengatur Jump List di XAML
JumpList A tidak secara otomatis dilampirkan ke Application objek. Anda melampirkan JumpList ke Application objek di XAML dengan menggunakan sintaks properti terlampir. Kelas JumpList mengimplementasikan ISupportInitialize antarmuka untuk mendukung deklarasi XAML dari JumpList. Jika JumpList dideklarasikan dalam XAML dan dilampirkan ke Application saat ini, maka secara otomatis diterapkan ke shell Windows saat JumpList diinisialisasi.
Mengatur dan Memodifikasi Jump List dalam Kode
Anda melampirkan JumpList ke Application objek dalam kode dengan memanggil metode statis SetJumpList . Ini juga menerapkan JumpList ke shell Windows.
Untuk mengubah JumpList pada waktu proses, Anda memanggil GetJumpList metode untuk mendapatkan JumpList yang saat ini dilampirkan ke Application. Setelah memodifikasi properti JumpList, Anda harus memanggil metode Apply untuk menerapkan perubahan ke shell Windows.
Nota
Anda biasanya membuat satu JumpList yang dilampirkan ke Application dan diterapkan ke shell Windows. Namun, Anda dapat membuat beberapa JumpList objek. Hanya satu JumpList sekaligus yang dapat diterapkan ke shell Windows, dan hanya satu JumpList sekaligus yang dapat dikaitkan dengan Application. Kerangka kerja .NET tidak mengharuskan ini menjadi JumpList yang sama.
Nota
Kelas ini berisi permintaan tautan di tingkat kelas yang berlaku untuk semua anggota. SecurityException dilemparkan ketika pemanggil langsung tidak memiliki izin kepercayaan penuh. Untuk informasi selengkapnya tentang tuntutan keamanan, lihat Permintaan Tautan.
Konstruktor
| Nama | Deskripsi |
|---|---|
| JumpList() |
Menginisialisasi instans baru dari kelas JumpList. |
| JumpList(IEnumerable<JumpItem>, Boolean, Boolean) |
Menginisialisasi instans JumpList baru kelas dengan parameter yang ditentukan. |
Properti
| Nama | Deskripsi |
|---|---|
| JumpItems |
Mendapatkan kumpulan JumpItem objek yang ditampilkan di Jump List. |
| ShowFrequentCategory |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah item yang sering digunakan ditampilkan di Jump List. |
| ShowRecentCategory |
Mendapatkan atau mengatur nilai yang menunjukkan apakah item yang baru saja digunakan ditampilkan di Jump List. |
Metode
| Nama | Deskripsi |
|---|---|
| AddToRecentCategory(JumpPath) |
Menambahkan jalur lompat yang ditentukan ke kategori Terbaru dari Jump List. |
| AddToRecentCategory(JumpTask) |
Menambahkan tugas lompat yang ditentukan ke kategori Terbaru dari Jump List. |
| AddToRecentCategory(String) |
Menambahkan jalur item yang ditentukan ke kategori Terbaru dari Jump List. |
| Apply() |
Mengirim JumpList ke shell Windows dalam statusnya saat ini. |
| BeginInit() |
Menandakan dimulainya JumpList inisialisasi. |
| EndInit() |
Menandakan akhir inisialisasi JumpList . |
| Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
| GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
| GetJumpList(Application) |
Mengembalikan objek yang JumpList terkait dengan aplikasi. |
| GetType() |
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
| MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
| SetJumpList(Application, JumpList) |
Mengatur objek yang JumpList terkait dengan aplikasi. |
| ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
Acara
| Nama | Deskripsi |
|---|---|
| JumpItemsRejected |
Terjadi ketika item lompat tidak berhasil ditambahkan ke Jump List oleh shell Windows. |
| JumpItemsRemovedByUser |
Terjadi ketika item lompat sebelumnya di Jump List dihapus dari daftar oleh pengguna. |