Metodo CodeEnum.AddMember
Crea un nuovo costrutto di codice di un membro e inserisce il codice nella posizione corretta.
Spazio dei nomi: EnvDTE
Assembly: EnvDTE (in EnvDTE.dll)
Sintassi
'Dichiarazione
Function AddMember ( _
Name As String, _
Value As Object, _
Position As Object _
) As CodeVariable
CodeVariable AddMember(
string Name,
Object Value,
Object Position
)
CodeVariable^ AddMember(
String^ Name,
Object^ Value,
Object^ Position
)
abstract AddMember :
Name:string *
Value:Object *
Position:Object -> CodeVariable
function AddMember(
Name : String,
Value : Object,
Position : Object
) : CodeVariable
Parametri
Name
Tipo: StringObbligatorio. Il nome del nuovo membro.
Value
Tipo: ObjectFacoltativa. La proprietà InitExpression dell'oggetto CodeVariable restituito. Può essere passato sotto forma di stringa o di oggetto espressione.
Position
Tipo: ObjectFacoltativa. Valore predefinito = 0. Elemento di codice dopo il quale deve essere aggiunto il nuovo elemento. Se il valore è un oggetto CodeElement, il nuovo elemento verrà aggiunto immediatamente dopo.
Se il valore è di tipo Long, AddMember indicherà l'elemento dopo il quale deve essere aggiunto il nuovo elemento.
Poiché nelle raccolte il conteggio inizia da 1, il valore 0 indica che il nuovo elemento deve essere inserito all'inizio della raccolta. Il valore -1 indica invece che l'elemento deve essere inserito alla fine.
Valore restituito
Tipo: EnvDTE.CodeVariable
Oggetto CodeVariable.
Note
Il metodo AddMember aggiunge un membro all'enumerazione e restituisce un oggetto CodeVariable con IsConstant impostato su true.
Se per il parametro Value viene impostata una stringa e la variabile non dispone di un'espressione di inizializzazione, il metodo AddMember inserisce la sintassi richiesta, ad esempio segni di uguale o punti e virgola. A seconda del linguaggio e dei controlli che esso esegue a livello di sintassi o di semantica sulla stringa passata, l'impostazione di questo argomento può avere esito negativo. Poiché i linguaggi non eseguono necessariamente il controllo della stringa e questa dipende dal linguaggio, se il contenuto della stringa non è stato specificato correttamente l'impostazione di questo argomento può produrre un comportamento indefinito.
Se si imposta Value su un oggetto CodeElement, la nuova creazione o meno dell'oggetto CodeElement dipende dall'implementazione del linguaggio del modello di codice. Se viene passato un elemento di codice già presente nel file di origine, alcuni linguaggi potrebbero implementare una semantica di copia.
La correttezza degli argomenti è determinata dal linguaggio sottostante il modello di codice.
Nota
Non si può fare affidamento sulla stabilità dei valori degli elementi del modello di codice, quali classi, strutture, funzioni, attributi, delegati.Per ulteriori informazioni, vedere la sezione Possibile modifica dei valori degli elementi del modello di codice in Individuazione di codice mediante il modello di codice (Visual Basic).
Esempi
Sub AddMemberExample(ByVal dte As DTE2)
' Before running this example, open a code document from a project
' and place the insertion point inside an enumeration.
Try
' Retrieve the CodeEnum at the insertion point.
Dim sel As TextSelection = _
CType(dte.ActiveDocument.Selection, TextSelection)
Dim enm As CodeEnum = _
CType(sel.ActivePoint.CodeElement( _
vsCMElement.vsCMElementEnum), CodeEnum)
' Add a member to the enumeration.
enm.AddMember("TestMember")
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
public void AddMemberExample(DTE2 dte)
{
// Before running this example, open a code document from a project
// and place the insertion point inside an enumeration.
try
{
// Retrieve the CodeEnum at the insertion point.
TextSelection sel =
(TextSelection)dte.ActiveDocument.Selection;
CodeEnum enm =
(CodeEnum)sel.ActivePoint.get_CodeElement(
vsCMElement.vsCMElementEnum);
// Add a member to the enumeration.
enm.AddMember("TestMember", null, -1);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
Sicurezza di .NET Framework
- Attendibilità totale per il chiamante immediato. Impossibile utilizzare questo membro in codice parzialmente attendibile. Per altre informazioni, vedere Utilizzo di librerie da codice parzialmente attendibile.
Vedere anche
Riferimenti
Altre risorse
Procedura: compilare ed eseguire gli esempi di codice del modello a oggetti di automazione
Individuazione di codice mediante il modello di codice (Visual Basic)
Individuazione di codice mediante il modello di codice (Visual C#)