Freigeben über


CodeFunction.IsShared-Eigenschaft

Legt fest oder ruft ab, ob das Element statisch definiert ist, d. h., ob das Element für alle Instanzen dieses Objekttyps oder nur für dieses Objekt verfügbar ist.

Namespace:  EnvDTE
Assembly:  EnvDTE (in EnvDTE.dll)

Syntax

'Declaration
Property IsShared As Boolean
    Get
    Set
bool IsShared { get; set; }
property bool IsShared {
    bool get ();
    void set (bool value);
}
abstract IsShared : bool with get, set
function get IsShared () : boolean
function set IsShared (value : boolean)

Eigenschaftswert

Typ: System.Boolean
Ein boolescher Wert, der true lautet, wenn die Methode freigegeben ist, und andernfalls false.

Hinweise

IsShared gibt zurück oder legt fest, ob die Methode einer Klasse oder den Instanzen einer Klasse zugeordnet ist. Beachten Sie, dass diese Einstellung zu sprachenabhängigen Fehlern führen kann. Obwohl IsShared erfolgreich zurückgegeben wird, bedeutet dies nicht, dass die sich ergebende Codeänderung erfolgreich kompiliert wird.

Tipp

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

 Sub IsSharedExample(ByVal dte As DTE2)

    ' Before running this example, open a code document from a project
    ' and place the insertion point inside a function.
    Try
        ' Retrieve the CodeFunction at the insertion point.
        Dim sel As TextSelection = _
            CType(dte.ActiveDocument.Selection, TextSelection)
        Dim fun As CodeFunction = _
            CType(sel.ActivePoint.CodeElement( _
            vsCMElement.vsCMElementFunction), CodeFunction)

        If fun.IsShared Then
            MsgBox(fun.Name & " is an instance method.")
        Else
            MsgBox(fun.Name & " is not an instance method.")
        End If
    Catch ex As Exception
        MsgBox(ex.Message)
    End Try

End Sub
 public void IsSharedExample(DTE2 dte)
{
    // Before running this example, open a code document from a project
    // and place the insertion point inside a function.
    try
    {
        // Retrieve the CodeFunction at the insertion point.
        TextSelection sel = 
            (TextSelection)dte.ActiveDocument.Selection;
        CodeFunction fun = 
            (CodeFunction)sel.ActivePoint.get_CodeElement(
            vsCMElement.vsCMElementFunction);

        if (fun.IsShared)
            MessageBox.Show(fun.Name + " is an instance method.");
        else
            MessageBox.Show(fun.Name + " is not an instance method.");
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

.NET Framework-Sicherheit

Siehe auch

Referenz

CodeFunction Schnittstelle

EnvDTE-Namespace

Weitere Ressourcen

Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell

Ermitteln von Code über das Codemodell (Visual Basic)

Ermitteln von Code über das Codemodell (Visual C#)