次の方法で共有


方法 : タスク一覧を制御する

更新 : 2007 年 11 月

[タスク一覧] とその内容は、オートメーションを使用して制御できます。これは、Visual Studio オートメーション モデルにおいて、次のオブジェクトおよびコレクションによって表されます。

オブジェクト名

説明

TaskList オブジェクト

[タスク一覧] を表します。

TaskItems コレクション

[タスク一覧] にあるすべてのタスクを表します。

TaskItem オブジェクト

[タスク一覧] にある単一のタスクを表します。

TaskListEvents オブジェクト

[タスク一覧] で発生したイベントに応答できます。

これらのオブジェクトとコレクションを使用して、次の操作を行うことができます。

  • タスク項目を作成し [タスク一覧] に追加します (Add メソッド)。または、[タスク一覧] からタスク項目を削除します (Delete メソッド)。

  • 現在 [タスク一覧] に存在する項目を取得します (Select メソッド)。

  • タスク項目に関連付けられたドキュメントを表示します (Navigate メソッド)。

  • タスク項目を選択します (Select メソッド)。

  • タスク項目が追加、削除、変更、または選択された場合に応答します (TaskAddedTaskRemovedTaskModified、および TaskNavigated の各イベント)。

[タスク一覧] の内容を制御するだけでなく、幅や高さなどの [タスク一覧] の特性も制御できます。詳細については、「方法 : ウィンドウの特性を変更する」を参照してください。

163ba701.alert_note(ja-jp,VS.90).gifメモ :

使用している設定またはエディションによっては、表示されるダイアログ ボックスやメニュー コマンドがヘルプに記載されている内容と異なる場合があります。ここに記載されている手順は、全般的な開発設定が適用されているものとして記述されています。設定を変更するには、[ツール] メニューの [設定のインポートとエクスポート] をクリックします。詳細については、「Visual Studio の設定」を参照してください。

使用例

次のアドインの例は、タスク一覧オートメーション モデルのさまざまなメンバを参照および使用する方法を示しています。この例では、[タスク一覧] に新しいタスクを追加して、タスク数を表示します。次に、タスクを 1 つ削除します。この例を実行する前に、[表示] メニューの [タスク一覧] を選択します。

Public Sub OnConnection(ByVal application As Object, ByVal _
  connectMode As ext_ConnectMode, ByVal addInInst As Object, _
  ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    _applicationObject = CType(application, DTE2)
    _addInInstance = CType(addInInst, AddIn)
    ' Pass the applicationObject member variable to the code example.
    TaskListExample(_applicationObject)
End Sub

Sub TaskListExample(ByVal dte As DTE2)
    Dim tl As TaskList = dte.ToolWindows.TaskList
    Dim tlItem As TaskItem

    ' Add a couple of tasks to the Task List.
    tlItem = tl.TaskItems.Add(" ", " ", "Test task 1.", _
      vsTaskPriority.vsTaskPriorityHigh, vsTaskIcon.vsTaskIconUser, _
      True, , 10, , )
    tlItem = tl.TaskItems.Add(" ", " ", "Test task 2.", _
      vsTaskPriority.vsTaskPriorityLow, vsTaskIcon.vsTaskIconComment, _
      , , 20, , )

    ' List the total number of task list items after adding the new 
    ' task items.
    MsgBox("Task Item 1 description: " & _
      tl.TaskItems.Item(2).Description)
    MsgBox("Total number of task items: " & tl.TaskItems.Count)

    ' Remove the second task item. The items list in reverse numeric 
    ' order.
    MsgBox("Deleting the second task item")
    tl.TaskItems.Item(2).Delete()
    MsgBox("Total number of task items: " & tl.TaskItems.Count)
End Sub
using System.Windows.Forms;
public void OnConnection(object application, ext_ConnectMode   
connectMode, object addInInst, ref Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    // Pass the applicationObject member variable to the code example.
    TaskListExample(_applicationObject);
}

public void TaskListExample(DTE2 dte)
{
    TaskList tl = (TaskList)dte.ToolWindows.TaskList;
    TaskItem tlItem;
    
    // Add a couple of tasks to the Task List.
    tlItem = tl.TaskItems.Add(" ", " ", "Test task 1.",  
      vsTaskPriority.vsTaskPriorityHigh, vsTaskIcon.vsTaskIconUser, 
      true, "", 10, true, true);
    tlItem = tl.TaskItems.Add(" ", " ", "Test task 2.", 
      vsTaskPriority.vsTaskPriorityLow, vsTaskIcon.vsTaskIconComment, 
      true, "", 20, true,true);

    // List the total number of task list items after adding the new 
    // task items.
    System.Windows.Forms.MessageBox.Show("Task Item 1 description: 
      "+tl.TaskItems.Item(2).Description);
    System.Windows.Forms.MessageBox.Show("Total number of task items: 
      "+tl.TaskItems.Count);

    // Remove the second task item. The items list in reverse numeric 
    // order.
    System.Windows.Forms.MessageBox.Show("Deleting the second task 
      item");
    tl.TaskItems.Item(2).Delete();
    System.Windows.Forms.MessageBox.Show("Total number of task items: 
      "+tl.TaskItems.Count);
}

参照

処理手順

方法 : ウィンドウの特性を変更する

方法 : アドインを作成する

チュートリアル : ウィザードの作成

概念

オートメーション オブジェクト モデルの階層図

参照

タスク一覧 (Visual Studio)

その他の技術情報

環境ウィンドウの作成と制御

アドインおよびウィザードの作成

オートメーションと機能拡張のリファレンス