CodeAttributeArgument.IsCodeType Property
Gets a value indicating whether a CodeType object can be obtained from this code attribute argument.
Namespace: EnvDTE80
Assembly: EnvDTE80 (in EnvDTE80.dll)
Syntax
'Declaration
ReadOnly Property IsCodeType As Boolean
bool IsCodeType { get; }
property bool IsCodeType {
bool get ();
}
abstract IsCodeType : bool with get
function get IsCodeType () : boolean
Property Value
Type: Boolean
A boolean value that is true if a CodeType object can be obtained; otherwise, false.
Remarks
If it is true, then you can query interface or cast it to a CodeType object.
Note
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).
Examples
' Macro code.
Sub codeArgNameExample()
Dim sel As TextSelection = _
CType(DTE.ActiveDocument.Selection, TextSelection)
Dim cls As CodeClass2 = CType(sel.ActivePoint. _
CodeElement(vsCMElement.vsCMElementClass), CodeClass2)
Dim attr As CodeAttribute2
Dim attrArg As CodeAttributeArgument
Dim msg As String
Try
' Loop through all of the attributes in the class.
For Each attr In cls.Attributes
' Loop through all of the arguments for the attribute.
For Each attrArg In attr.Arguments
msg += "Value: " & attrArg.Value & " " & vbCr
' If the argument has a name, list it.
If attrArg.Name <> Nothing Then
msg += "Name: " & attrArg.Name & vbCr
End If
msg += "Arg start pos: " & _
attrArg.StartPoint.LineCharOffset & vbCr
msg += "Arg end pos: " & _
attrArg.EndPoint.LineCharOffset & vbCr
Next
Next
msg += "Location: " & attrArg.InfoLocation.ToString & vbCr
msg += "Is code type? " & attrArg.IsCodeType.ToString & vbCr
msg += "Code element type: " & attrArg.Kind.ToString & vbCr
msg += "Language: " & attrArg.Language & vbCr
msg += ("Name of attribute's project item: " & _
attrArg.ProjectItem.Name)
' List the arguments for the attribute.
MsgBox("Attribute parameters for " & attr.Name _
& ": " & vbCr & msg)
Catch ex As System.Exception
MsgBox("ERROR -> " & ex.Message)
End Try
End Sub
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.
See Also
Reference
CodeAttributeArgument Interface
Other Resources
How to: Compile and Run the Automation Object Model Code Examples