CodeEnum.AddMember (Método)
Crea una nueva construcción de código de miembro e inserta el código en la ubicación adecuada.
Espacio de nombres: EnvDTE
Ensamblado: EnvDTE (en EnvDTE.dll)
Sintaxis
'Declaración
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
Parámetros
- Name
Tipo: System.String
Obligatorio.Nombre del nuevo miembro.
- Value
Tipo: System.Object
Opcional.InitExpression del objeto CodeVariable devuelto.Puede pasarse en forma de cadena o en forma de objeto de expresión.
- Position
Tipo: System.Object
Opcional.Valor predeterminado = 0.Elemento de código tras el que se agrega el elemento nuevo.Si el valor es un CodeElement, el nuevo elemento se agregará inmediatamente tras él.
Si el tipo de datos del valor es Long, AddMember indicará el elemento detrás del cual se ha de agregar el nuevo elemento.
Como el recuento de los elementos de una colección comienza a partir de 1, pasar un valor de 0 indica que el nuevo elemento deberá colocarse al principio de la colección.Un valor de -1 indica que el elemento deberá situarse al final de la colección.
Valor devuelto
Tipo: EnvDTE.CodeVariable
Objeto CodeVariable.
Comentarios
AddMember agrega un miembro a la enumeración y devuelve un objeto CodeVariable con IsConstant establecida en true.
Cuando Value se establece en una cadena, AddMember inserta la sintaxis necesaria (como signos de igual o signos de punto y coma) si la variable no contiene ya una expresión de inicialización. El establecimiento de este argumento puede producir errores, en función de los lenguajes y de cualquier comprobación sintáctica o semántica realizada en la cadena que se ha pasado. Los lenguajes no son necesarios para comprobar la cadena; y puesto que la cadena depende, por definición, del lenguaje, el establecimiento de este argumento puede dar lugar a un comportamiento indefinido si la cadena incluye cualquier contenido incorrecto.
Al establecer Value en CodeElement, el hecho de que se deba crear CodeElement depende de la implementación del lenguaje del modelo de código. Algunos lenguajes podrían implementar semántica de copia cuando se les pasa un elemento de código que ya se encuentra en un archivo de código fuente.
La corrección de los argumentos vendrá determinada por el lenguaje que subyace al modelo de código.
Nota
No se puede confiar en que los valores de los elementos del modelo de código (como clases, estructuras, funciones, atributos, delegados) se mantengan siempre sin variaciones. Para obtener más información, vea la sección Los valores de los elementos del modelo de código pueden cambiar, en Detectar código utilizando el modelo de código (Visual Basic).
Ejemplos
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);
}
}
Seguridad de .NET Framework
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea Utilizar bibliotecas de código que no es de plena confianza.
Vea también
Referencia
Otros recursos
Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización
Detectar código utilizando el modelo de código (Visual Basic)