2012年11月22日木曜日

ジャンプリストを実装するプログラム


Windows8 の ジャンプリスト を使うための、C# のプログラムです。

今回は、PresentationFramework を利用してみました。

それでは手順です。

Jump List の名前で、Windows フォームアプリケーションを作成
(既存のアプリに組み込む場合は、プロジェクトを開く)

メニューバーから、プロジェクト 参照の追加 
参照マネージャー の画面で、アセンブリ フレイムワーク の一覧の中の
PresentationFramework に チェック OK ボタンをクリック。


Form1.cs のコード画面で

using System.Windows.Shell;

を追加
これで、PresentationFramework が利用可能になります。
ついでに、using System.IO; も追加

JumpTask を用意し、これをJumpItem として JumpList に登録します。
最後に JumpList を表示させます。


今回のプログラムでは、フォームが表示されますが、フォームには何も無いです。
ジャンプリストに、電卓とメモ帳とコマンドプロンプトの3つが追加表示されます。
コマンドプロンプトは、dir を表示し、自動的に閉じます。


Form1.cs
====================================


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Windows.Shell;
using System.IO;


namespace Jump_List
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            // JumpTask 作成
            JumpTask jumpTask1 = new JumpTask();

            // JumpTask のプロパティ設定
            jumpTask1.ApplicationPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.SystemX86), "calc.exe");
            jumpTask1.IconResourcePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.SystemX86), "calc.exe");
            jumpTask1.Arguments = "";
            jumpTask1.Title = "Calculator";
            jumpTask1.Description = "Open Calculator.";
            jumpTask1.CustomCategory = "User Added Tasks";

            // JumpTask 作成
            JumpTask jumpTask2 = new JumpTask();

            // JumpTask のプロパティ設定
            jumpTask2.ApplicationPath = Path.Combine(Environment.GetEnvironmentVariable("windir") , "notepad.exe");
            jumpTask2.IconResourcePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Windows), "notepad.exe");
            jumpTask2.Arguments = "";
            jumpTask2.Title = "NotePad";
            jumpTask2.Description = "Open NotePad";
            jumpTask2.CustomCategory = "User Added Tasks";

            // JumpTask 作成
            JumpTask jumpTask3 = new JumpTask();

            // JumpTask のプロパティ設定
            // string str = "test";
            jumpTask3.ApplicationPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), "cmd.exe");
            jumpTask3.IconResourcePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), "cmd.exe");
            jumpTask3.Arguments = "/c dir";
            jumpTask3.Title = "cmd";
            jumpTask3.Description = "cmd";
            jumpTask3.CustomCategory = "User Added Tasks";

         
            // JumpList に JumpTask 登録
            JumpList jumpList1 = new JumpList(new JumpItem[] { jumpTask1, jumpTask2 , jumpTask3 }, true, true);
            // 表示
            jumpList1.Apply();

        }
    }
}


====================================

0 件のコメント:

コメントを投稿