CodeFunction.CanOverride Property

Definition

Sets or gets whether or not the function can be overridden.

C++/CX
public:
 property bool CanOverride { bool get(); void set(bool value); };

Property Value

A Boolean value indicating true if the function can be overriden; false if otherwise.

Attributes

Examples

VB
 Sub CanOverrideExample(ByVal dte As DTE2)  

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

        ' Find the class's overridable methods.  
        Dim ovrrides As String  
        Dim elem As CodeElement  
        For Each elem In cls.Members  
            If elem.Kind = vsCMElement.vsCMElementFunction AndAlso _  
                CType(elem, CodeFunction).CanOverride Then  
                ovrrides &= elem.Name & vbCrLf  
            End If  
        Next  

        MsgBox(cls.Name & " has the following overridable methods:" & _  
            vbCrLf & vbCrLf & ovrrides)  
    Catch ex As Exception  
        MsgBox(ex.Message)  
    End Try  

End Sub  

Remarks

For Visual Basic, the function was declared with MustOverride or Overrideable.

For Visual C# and Visual C++, the function was declared with the virtual keyword.

For JScript, the function was not declared with the static or final keywords; that is, the methods can be implicitly overridden.

Napomena

The values of code model elements such as classes, structs, functions, attributes, delegates, and so forth can be non-deterministic after making certain kinds of edits, meaning that their values cannot be relied upon to always remain the same. For more information, see the section Code Model Element Values Can Change in Discovering Code by Using the Code Model (Visual Basic).

Applies to

Proizvod Verzije
Visual Studio SDK 2015, 2017, 2019, 2022