CodeAttribute2-Schnittstelle
Definiert ein Attribut für ein Codeelement.
Namespace: EnvDTE80
Assembly: EnvDTE80 (in EnvDTE80.dll)
Syntax
'Declaration
<GuidAttribute("35187E2A-E5F6-4F89-A4CE-DA254640855B")> _
Public Interface CodeAttribute2 _
Inherits CodeAttribute
[GuidAttribute("35187E2A-E5F6-4F89-A4CE-DA254640855B")]
public interface CodeAttribute2 : CodeAttribute
[GuidAttribute(L"35187E2A-E5F6-4F89-A4CE-DA254640855B")]
public interface class CodeAttribute2 : CodeAttribute
[<GuidAttribute("35187E2A-E5F6-4F89-A4CE-DA254640855B")>]
type CodeAttribute2 =
interface
interface CodeAttribute
end
public interface CodeAttribute2 extends CodeAttribute
Der CodeAttribute2-Typ macht die folgenden Member verfügbar.
Eigenschaften
Name | Beschreibung | |
---|---|---|
Arguments | Ruft eine Auflistung von CodeElement-Objekten ab, die die diesem Attribut zugeordneten CodeAttributeArgument-Objekte enthält. | |
Children | (Von CodeAttribute geerbt.) | |
Children | Ruft eine Auflistung von Objekten ab, die in diesem Codekonstrukt enthalten sind. | |
Collection | (Von CodeAttribute geerbt.) | |
Collection | Ruft eine Auflistung von CodeAttribute2-Objekten ab. | |
DTE | (Von CodeAttribute geerbt.) | |
DTE | Ruft das Erweiterbarkeitsobjekt der obersten Ebene ab. | |
EndPoint | (Von CodeAttribute geerbt.) | |
EndPoint | Ruft den Bearbeitungspunkt ab, der die Endposition des Codeattributs ist. | |
Extender[String] | (Von CodeAttribute geerbt.) | |
Extender[String] | Gibt den angeforderten Extender zurück, falls er für dieses Codeattribut verfügbar ist. | |
ExtenderCATID | (Von CodeAttribute geerbt.) | |
ExtenderCATID | Ruft die ID der Extenderkategorie (CATID) für das Objekt ab. | |
ExtenderNames | (Von CodeAttribute geerbt.) | |
ExtenderNames | Ruft eine Liste mit den Namen der für das Objekt verfügbaren Extender ab. | |
FullName | (Von CodeAttribute geerbt.) | |
FullName | Ruft den vollständigen Pfad und Namen der Objektdatei ab. | |
InfoLocation | (Von CodeAttribute geerbt.) | |
InfoLocation | Ruft das Codemodell ab. | |
IsCodeType | (Von CodeAttribute geerbt.) | |
IsCodeType | Ruft ab, ob ein CodeType-Objekt aus diesem Objekt abgerufen werden kann. | |
Kind | (Von CodeAttribute geerbt.) | |
Kind | Ruft eine Enumeration ab, die den Typ des Attributs angibt. | |
Language | (Von CodeAttribute geerbt.) | |
Language | Ruft eine Konstante ab, die die zum Erstellen des Attributs verwendete Programmiersprache angibt. | |
Name | (Von CodeAttribute geerbt.) | |
Name | Legt den Namen des Codeattributs fest oder ruft ihn ab. | |
Parent | (Von CodeAttribute geerbt.) | |
Parent | Ruft das unmittelbar übergeordnete Objekt des Codeattributs ab. | |
ProjectItem | (Von CodeAttribute geerbt.) | |
ProjectItem | Ruft das dem Codeattribut zugeordnete ProjectItem ab. | |
StartPoint | (Von CodeAttribute geerbt.) | |
StartPoint | Ruft ein TextPoint-Objekt ab, das den Anfang des Attributs definiert. | |
Target | Legt das Ziel des Codeattributs fest oder ruft es ab. | |
Value | (Von CodeAttribute geerbt.) | |
Value | Legt die Daten für das Codeattribut fest oder ruft sie ab. |
Zum Seitenanfang
Methoden
Name | Beschreibung | |
---|---|---|
AddArgument | Fügt dem Attribut ein Argument hinzu. | |
Delete() | (Von CodeAttribute geerbt.) | |
Delete() | Entfernt alle Attribute im Codeelement. | |
GetEndPoint(vsCMPart) | (Von CodeAttribute geerbt.) | |
GetEndPoint(vsCMPart) | Gibt ein TextPoint-Objekt zurück, das die Endposition des Attributs markiert. | |
GetStartPoint(vsCMPart) | (Von CodeAttribute geerbt.) | |
GetStartPoint(vsCMPart) | Gibt ein TextPoint-Objekt zurück, das die Anfangsposition des Attributs definiert. |
Zum Seitenanfang
Hinweise
Das CodeAttribute2-Objekt stellt ein einzelnes COM-Metadatenattribut dar, das einem Codeelement zugeordnet ist.Mit der AddAttribute-Methode des entsprechenden Objekts können Sie neue Attribute hinzufügen, und mit der Delete-Methode des entsprechenden Objekts können Sie die Attribute löschen.Der Wert eines Codeattributs wird mit diesem Objekt abgerufen und festgelegt.
Hinweis |
---|
Die Werte von Codemodellelementen wie Klassen, Strukturen, Funktionen, Attributen, Delegaten usw. können nach bestimmten Bearbeitungsvorgängen nicht deterministisch sein, d. h., dass nicht mehr davon ausgegangen werden kann, dass ihre Werte immer unverändert bleiben.Weitere Informationen finden Sie im Abschnitt zum Änderungsverhalten von Codemodellelementwerten unter Ermitteln von Code über das Codemodell (Visual Basic). |
Beispiele
// The following example creates a new namespace and attribute in the current class.
public void CreateClassAndAttrib(DTE2 applicationObject)
{
// Before running, load or create a project.
FileCodeModel2 fcm2 = GetFileCodeModel(applicationObject);
CodeAttribute2 cmAttribute;
CodeClass2 cmClass;
if (fcm2 != null)
{
CodeNamespace cmNamespace;
// Try to create a new namespace.
try
{
cmNamespace = fcm2.AddNamespace("CMNamespace", -1);
// If successful, create the other code elements.
if (cmNamespace != null)
{
cmClass = (CodeClass2)cmNamespace.AddClass("ANewClass",
-1, null, null, vsCMAccess.vsCMAccessPrivate);
cmAttribute = (CodeAttribute2)cmClass.AddAttribute
("NewAttribute", "AttributeValue", -1);
}
else
{
MessageBox.Show("Cannot continue - no filecodemodel
available.");
}
}
catch (Exception ex)
{
MessageBox.Show("ERROR: " + ex);
}
}
}
public FileCodeModel2 GetFileCodeModel(DTE2 applicationObject)
{
// Returns the FileCodeModel object of the active
// window.
TextWindow txtWin =
(TextWindow)applicationObject.ActiveWindow.Object;
FileCodeModel2 fcm2;
if (txtWin != null)
{
try
{
fcm2 = (FileCodeModel2)txtWin.Parent.
ProjectItem.FileCodeModel;
return fcm2;
}
catch (Exception ex)
{
MessageBox.Show("ERROR: " + ex);
return null;
}
}
else
return null;
}
Siehe auch
Referenz
Weitere Ressourcen
Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell