Commands.AddNamedCommand 方法
建立一個由環境所儲存並可在下次環境啟動時使用的具名命令,即使該增益集於環境啟動時並未載入也一樣。
命名空間: EnvDTE
組件: EnvDTE (在 EnvDTE.dll 中)
語法
'宣告
Function AddNamedCommand ( _
AddInInstance As AddIn, _
Name As String, _
ButtonText As String, _
Tooltip As String, _
MSOButton As Boolean, _
Bitmap As Integer, _
ByRef ContextUIGUIDs As Object(), _
vsCommandDisabledFlagsValue As Integer _
) As Command
Command AddNamedCommand(
AddIn AddInInstance,
string Name,
string ButtonText,
string Tooltip,
bool MSOButton,
int Bitmap,
ref Object[] ContextUIGUIDs,
int vsCommandDisabledFlagsValue
)
Command^ AddNamedCommand(
[InAttribute] AddIn^ AddInInstance,
[InAttribute] String^ Name,
[InAttribute] String^ ButtonText,
[InAttribute] String^ Tooltip,
[InAttribute] bool MSOButton,
[InAttribute] int Bitmap,
[InAttribute] array<Object^>^% ContextUIGUIDs,
[InAttribute] int vsCommandDisabledFlagsValue
)
abstract AddNamedCommand :
AddInInstance:AddIn *
Name:string *
ButtonText:string *
Tooltip:string *
MSOButton:bool *
Bitmap:int *
ContextUIGUIDs:Object[] byref *
vsCommandDisabledFlagsValue:int -> Command
function AddNamedCommand(
AddInInstance : AddIn,
Name : String,
ButtonText : String,
Tooltip : String,
MSOButton : boolean,
Bitmap : int,
ContextUIGUIDs : Object[],
vsCommandDisabledFlagsValue : int
) : Command
參數
- AddInInstance
型別:EnvDTE.AddIn
必要項。AddIn 物件加入新命令。
- Name
型別:System.String
必要項。新命令名稱的簡短形式。AddNamedCommand 以 Addins.Progid. 為開頭建立唯一的名稱。
- ButtonText
型別:System.String
必要項。如果這個命令是繫結至以名稱而非圖示顯示的按鈕時,將會使用的名稱。
- Tooltip
型別:System.String
必要項。使用者將滑鼠指標停留在任何繫結至新命令的控制項上時,文字會顯示。
- MSOButton
型別:System.Boolean
必要項。表示具名命令按鈕圖片是否為 Office 圖片。True 表示為按鈕。如果 MSOButton 是 False,那麼 Bitmap 就是 Visual C++ 資源 DLL 中 16x16 點陣圖資源 (但不是圖示資源) 的 ID,而此 DLL 必須位在包含語言地區設定識別項 (Locale Identifier) (英文為 1033) 的資料夾中。
- Bitmap
型別:System.Int32
選擇項。要顯示在按鈕上之點陣圖的 ID。
- ContextUIGUIDs
型別:array<System.Object[]%
選擇項。GUID 的 SafeArray,可以判斷何種環境內容 (即偵錯模式和設計模式等等) 會顯示這個命令。請參閱 vsCommandDisabledFlags。
- vsCommandDisabledFlagsValue
型別:System.Int32
傳回值
型別:EnvDTE.Command
Command 物件。
備註
增益集可以稍後藉由回應 QueryStatus 方法來變更 ButtonText 名稱。 如果文字是以 "#" 開頭,那麼字串的其餘部分就是一個整數,代表增益集註冊的附屬 DLL (Satellite DLL) 中的資源 ID。
ContextUIGUIDs 參數和 vsCommandStatusValue 參數用於未載入增益集的時候,因此無法回應 QueryStatus方法。 如果 ContextUIGUIDs 是空的,那麼該命令會一直啟用,直到載入增益集並能回應 QueryStatus 為止。
增益集可以透過 IDTCommandTarget 介面接收引動過程告知。 可以使用 IDTExtensibility2 介面的 OnConnection 方法加入按鈕。
範例
' Macro code.
Imports Microsoft.VisualStudio.CommandBars
Sub AddControlExample()
' Before running, you must add a reference to the Office
' typelib to gain access to the CommandBar object. Also, for this
' example to work correctly, there should be an add-in available
' in the Visual Studio environment.
Dim cmds As Commands
Dim cmdobj As Command
Dim cmdbarobj As CommandBar
Dim colAddins As AddIns
' Set references.
colAddins = DTE.AddIns()
cmds = DTE.Commands
cmdobj = cmds.Item("File.NewFile")
' Create a toolbar and add the File.NewFile command to it.
cmds.AddCommandBar("Mycmdbar", _
vsCommandBarType.vsCommandBarTypeToolbar)
MsgBox("Commandbar name: " & cmdbarobj.Name)
cmdobj.AddControl(cmdbarobj)
cmds.AddNamedCommand(colAddins.Item(1), "MyCommand", _
"Button Text", "Some tooltip", True)
End Sub
.NET Framework 安全性
- 完全信任立即呼叫者。這個成員無法供部分信任的程式碼使用。如需詳細資訊,請參閱從部分受信任程式碼使用程式庫。