Windows2.CreateToolWindow2 – metoda
Vytvoří nové okno nástroje a hostuje ovládací prvek .NET definované uživatelem v něm.
Obor názvů: EnvDTE80
Sestavení: EnvDTE80 (v EnvDTE80.dll)
Syntaxe
'Deklarace
Function CreateToolWindow2 ( _
Addin As AddIn, _
Assembly As String, _
Class As String, _
Caption As String, _
GuidPosition As String, _
<OutAttribute> ByRef ControlObject As Object _
) As Window
Window CreateToolWindow2(
AddIn Addin,
string Assembly,
string Class,
string Caption,
string GuidPosition,
out Object ControlObject
)
Window^ CreateToolWindow2(
AddIn^ Addin,
String^ Assembly,
String^ Class,
String^ Caption,
String^ GuidPosition,
[InAttribute] [OutAttribute] Object^% ControlObject
)
abstract CreateToolWindow2 :
Addin:AddIn *
Assembly:string *
Class:string *
Caption:string *
GuidPosition:string *
ControlObject:Object byref -> Window
function CreateToolWindow2(
Addin : AddIn,
Assembly : String,
Class : String,
Caption : String,
GuidPosition : String,
ControlObject : Object
) : Window
Parametry
Addin
Typ: AddInInstance doplňku vytváření okno nástroje.
Assembly
Typ: StringÚplný název nebo cesta souboru sestavení obsahující uživatelský ovládací prvek.
Class
Typ: StringÚplný název třídy implementace uživatelského ovládacího prvku.
Caption
Typ: StringTitulek zobrazit v novém okně nástroje.
GuidPosition
Typ: StringJedinečný identifikátor v novém okně. (Slouží k vyhledání v okně Windows kolekce.)
ControlObject
Typ: Object%Uživatelský ovládací prvek hostitelem nové okno nástroje.
Vrácená hodnota
Typ: Window
Objekt Window.
Poznámky
Před vyvoláním metody CreateToolWindow2 pro vytvoření nového okna panelu nástrojů je třeba přesunout uživatelský ovládací prvek (ControlObject) do stejného sestavení, ve kterém se nachází doplněk, nebo nastavit všechny atributy uživatelského ovládacího prvku pro jeho aktivaci a úplné zobrazení v modelu COM. (Například kontrolou možnosti Provést registraci pro zprostředkovatele komunikace s objekty COM v nastavení kompilace projektu.) Není-li toto provedeno, nebude provedeno správné zařazení ovládacího prvku a CreateToolWindow2 vrátí hodnotu null.
Pokud se pokusíte nastavit stav viditelnosti nové okno nástroje – například výšku, šířku nebo pozice – dříve, než je zobrazena v okně nástroje, obdržíte chybu.Ujistěte se, že v okně je zobrazen před pokusem o nastavení těchto vlastností.
Další příklady použití této metody naleznete na vzorku ToolWindow Visual Studio automatizace vzorky webové stránky: https://www.microsoft.com/downloads/details.aspx?familyid=3ff9c915-30e5-430e-95b3-621dccd25150&displaylang=en.Informace o vytváření ovládacích prvků ActiveX naleznete v tématu Vytvoření ovládacího prvku ActiveX knihovny MFC.
Příklady
Následující příklad vyžaduje nejprve vytvořit uživatelský ovládací prvek vytvořením projektu knihovny ovládacích prvků Windows.Poznamenejte si název projektu a třídy ovládacího prvku pro použití v následujícím kódu.Změňte řetězec assemblypath do adresáře souboru DLL uživatelského ovládacího prvku.Navíc kód slouží k nahrazení OnConnection metoda přidat do projektu.
[C#]
public void OnConnection(object application, ext_ConnectMode
connectMode, object addInInst, ref Array custom)
{
_applicationObject = (DTE2)application;
_addInInstance = (AddIn)addInInst;
EnvDTE80.Windows2 wins2obj;
AddIn addinobj;
object ctlobj = null;
Window newWinobj;
// A toolwindow must be connected to an add-in, so this line
// references one.
addinobj = _applicationObject.AddIns.Item(1);
wins2obj = (Windows2)_applicationObject.Windows;
// This section specifies the path and class name of the windows
// control that you want to host in the new tool window, as well as
// its caption and a unique GUID.
string assemblypath = "C:\\temp\\WindowsControlLibrary1.dll";
string classname = "WindowsControlLibrary1.UserControl1";
string guidpos = "{426E8D27-3D33-4FC8-B3E9-9883AADC679F}";
string caption = "CreateToolWindow2 Test";
// Create the new tool window and insert the user control in it.
newWinobj = wins2obj.CreateToolWindow2(addinobj, assemblypath,
classname, caption, guidpos, ref ctlobj);
newWinobj.Visible = true;
}
Zabezpečení rozhraní .NET Framework
- Plná důvěra přímému volajícímu. Částečně zabezpečený kód nemůže tento člen použít. Další informace naleznete v tématu Používání knihoven z částečně důvěryhodného kódu.
Viz také
Referenční dokumentace
Další zdroje
Postupy: Vytvoření a řízení oken nástrojů
Postupy: Kompilace a spuštění příkladů kódu objektu automatizace