TaskItems2.Add2 方法

將新的工作項目加入至 TaskList 中。

命名空間:  EnvDTE80
組件:  EnvDTE80 (在 EnvDTE80.dll 中)

語法

'宣告
Function Add2 ( _
    Category As String, _
    SubCategory As String, _
    Description As String, _
    Priority As Integer, _
    Icon As Object, _
    Checkable As Boolean, _
    File As String, _
    Line As Integer, _
    CanUserDelete As Boolean, _
    FlushItem As Boolean, _
    AutoNavigate As Boolean _
) As TaskItem
TaskItem Add2(
    string Category,
    string SubCategory,
    string Description,
    int Priority,
    Object Icon,
    bool Checkable,
    string File,
    int Line,
    bool CanUserDelete,
    bool FlushItem,
    bool AutoNavigate
)
TaskItem^ Add2(
    [InAttribute] String^ Category, 
    [InAttribute] String^ SubCategory, 
    [InAttribute] String^ Description, 
    [InAttribute] int Priority, 
    [InAttribute] Object^ Icon, 
    [InAttribute] bool Checkable, 
    [InAttribute] String^ File, 
    [InAttribute] int Line, 
    [InAttribute] bool CanUserDelete, 
    [InAttribute] bool FlushItem, 
    [InAttribute] bool AutoNavigate
)
abstract Add2 : 
        Category:string * 
        SubCategory:string * 
        Description:string * 
        Priority:int * 
        Icon:Object * 
        Checkable:bool * 
        File:string * 
        Line:int * 
        CanUserDelete:bool * 
        FlushItem:bool * 
        AutoNavigate:bool -> TaskItem 
function Add2(
    Category : String, 
    SubCategory : String, 
    Description : String, 
    Priority : int, 
    Icon : Object, 
    Checkable : boolean, 
    File : String, 
    Line : int, 
    CanUserDelete : boolean, 
    FlushItem : boolean, 
    AutoNavigate : boolean
) : TaskItem

參數

  • Category
    型別:System.String
    必要項。表示工作項目的分類名稱。
  • SubCategory
    型別:System.String
    必要項。表示工作項目的子類別名稱。
  • Description
    型別:System.String
    必要項。描述工作項目。
  • Icon
    型別:System.Object
    選擇項。決定代表新的工作項目的圖示型別,這個設定必須為 vsTaskIcon 或 IPictureDisp。
  • Checkable
    型別:System.Boolean
    選擇項。指出是否要工作項目提供核取方塊給使用者核取,以表明此項工作已完成。預設值是 false。
  • File
    型別:System.String
    選擇項。指出與新的工作項目有關的檔案或路徑,預設值為空字串 (""),如果使用的話,IsSettable (vsTaskListColumnFile) 會傳回 false。檔案名稱可以是完整路徑、相對路徑,或僅僅是檔案的名稱。請注意,將檔案或路徑與項目產生關聯並不代表執行了任何動作。
  • Line
    型別:System.Int32
    選擇項。指出原始程式碼中與新的工作項目有關的那一行,預設值為 0,如果使用的話,IsSettable (vsTaskListColumnLine) 會傳回 false。請注意,將行號與項目產生關聯並不代表執行了任何動作。
  • CanUserDelete
    型別:System.Boolean
    選擇項。指出如果新的工作項目在環境中已經遭到選取,使用者能否按 DELETE 刪除這個項目。預設值是 true。
  • FlushItem
    型別:System.Boolean
    選擇項。指出新項目在 [工作清單] 中是否立即為可見的。當 FlushItem 設為 true,會在呼叫 Add 之後立即更新 [工作清單]。當 FlushItem 設為 false,會在完成所有更新後再更新 [工作清單]。false 設定主要是用在當您於 [工作清單] 中一次加入大量項目時提升效能。預設值是 true。
  • AutoNavigate
    型別:System.Boolean
    選擇項。指出 TaskItem 是否已啟用 AutoNavigate 功能。如果 AutoNavigate 已開啟,則它是設為 true,否則為 false。

傳回值

型別:EnvDTE.TaskItem
TaskItem 物件。

備註

加入點陣圖時,RGB 色彩 0x0000FF00 (綠) 是透明的, 圖片中所有使用這個值的地方都會透明,而且 [工作清單] 會透過去。

點陣圖的寬度和高度必須是 16 x 16 像素。

如果使用 IPictureDisp,則 PICTYPE 引數必須設為 IconBitmapMetafilesUninitializedNone 的設定無法正常運作。

範例

這個範例會使用 Add2 方法將兩個工作項目加入至工作清單中,並在訊息視窗中顯示這兩個項目的某些屬性。 如需如何像執行增益集一般,執行這個範例的詳細資訊,請參閱 HOW TO:編譯和執行 Automation 物件模型程式碼範例

Imports EnvDTE
Imports EnvDTE80
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)
    TaskItemsAdd2Example(_applicationObject)
End Sub
Sub TaskItemsAdd2Example(ByVal dte As DTE2)
    Dim win As Window = _
    _applicationObject.Windows.Item(Constants.vsWindowKindTaskList)
    Dim TL As TaskList = CType(win.Object, TaskList)
    Dim TLItem As TaskItem
    Dim TLItems As TaskItems2
    TLItems = CType(TL.TaskItems, TaskItems2)
    ' Add a couple of tasks to the Task List using Add2.
    TLItem = TLItems.Add2(" ", " ", "Test task 1." _
    , vsTaskPriority.vsTaskPriorityHigh, vsTaskIcon.vsTaskIconUser _
    , True, , 10, , , False)
        TLItem = TLItems.Add2(" ", " ", "Test task 2." _
    , vsTaskPriority.vsTaskPriorityLow, vsTaskIcon.vsTaskIconComment _
    , , , 20, , , False)
    ' List the total number of task list items after adding the new 
    ' task items.
        MsgBox("Task Item 1 description: "  _
    & TLItems.Item(2).Description)
    MsgBox("Total number of task items: " & TLItems.Count)
    ' Remove the second task item.
    ' The items list in reverse numeric order.
    MsgBox("Deleting the second task item")
    TLItems.Item(1).Delete()
    MsgBox("Total number of task items: " & TLItems.Count)
End Sub
using EnvDTE;
using EnvDTE80;
using System.Windows.Forms;
public void OnConnection(object application, 
ext_ConnectMode connectMode, object addInInst, ref Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    TaskItems2Add2Example(_applicationObject);
}
public void TaskItems2Add2Example(DTE2 dte)
{
    Window2 win = (Window2)_applicationObject.Windows.Item
(Constants.vsWindowKindTaskList);
    TaskList TL = (TaskList)win.Object;
    TaskItem TLItem;
    TaskItems2 TLItems;
    TLItems = (TaskItems2)TL.TaskItems;
    // Add a couple of tasks to the Task List.
    TLItem = TLItems.Add2("MyTask", "MyTask1", "Test task 1."
, 1, vsTaskIcon.vsTaskIconUser, true,null,10,true,true,true);
TLItem = TLItems.Add2("MyTask", "MyTask1", "Test task 2."
, 2, vsTaskIcon.vsTaskIconComment, true, null, 20, true, true,false);
    // List the total number of task list items after adding the new
    // task items.
    MessageBox.Show("Task Item 1 description: " 
+ TLItems.Item(2).Description);
    MessageBox.Show("Total number of task items: " 
+ TLItems.Count.ToString());
    // Remove the second task item.
    // The items list in reverse numeric order.
    MessageBox.Show("Deleting the second task item");
    TLItems.Item(1).Delete();
    MessageBox.Show("Total number of task items: " + TLItems.Count);
}

.NET Framework 安全性

請參閱

參考

TaskItems2 介面

EnvDTE80 命名空間