Поделиться через


CodeFunction.IsShared - свойство

Задает или возвращает информацию о том, определен ли статистически элемент, то есть является ли элемент общим для всех экземпляров этого типа объектов, или он относится лишь к этому объекту.

Пространство имен:  EnvDTE
Сборка:  EnvDTE (в EnvDTE.dll)

Синтаксис

'Декларация
Property IsShared As Boolean
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)

Значение свойства

Тип: System.Boolean
Логическое значение, равное true, если метод может использоваться совместно, и равное false в противном случае.

Заметки

IsShared возвращает или задает значение, указывающее, связан ли метод с классом или с экземплярами класса.Обратите внимание, что такая установка могла бы выдать зависимые от языка ошибки.Хотя IsShared возвращается успешно, это не означает, что изменение кода будет успешно скомпилировано.

ПримечаниеПримечание

Значения элементов модели кода, таких как классы, структуры, функции, атрибуты, делегаты и другие, после внесения некоторых изменений могут оказаться недетерминированными, другими словами, нельзя рассчитывать, что их значения будут всегда оставаться одинаковыми.Дополнительные сведения см. в разделе "Значения элементов модели кода могут изменяться" в разделе Практическое руководство. Поиск кода при помощи модели кода (Visual Basic).

Примеры

 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

См. также

Ссылки

CodeFunction Интерфейс

EnvDTE - пространство имен

Другие ресурсы

Практическое руководство. Компиляция и выполнение примеров кода модели объектов автоматизации

Практическое руководство. Поиск кода при помощи модели кода (Visual Basic)

Практическое руководство. Поиск кода при помощи модели кода (Visual C#)