Export (0) Print
Expand All

ContextAttributes.HighPriorityAttributes Property

Gets the High Priority attributes collection.

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

ContextAttributes HighPriorityAttributes { get; }

Property Value

Type: EnvDTE.ContextAttributes
A ContextAttributes collection.

There is only one instance of this attributes collection. It is available only from the ContextAttributes collection. If the ContextAttributes collection is for a window, then HighPriorityAttributes returns nothing.

These attributes are always in effect, and they are the highest in the context bag precedence, resulting in matching topics going to the top of their respective categories.

    Sub HighPriorityAttributesExample()
        Dim cas As EnvDTE.ContextAttributes
        Dim ca As EnvDTE.ContextAttribute

        Try
            cas = DTE.ContextAttributes
            ' List all regular and high priority attributes.
            ListAttr(ca, cas)
            ' Add a new F1 keyword to the global high priority 
            ' attributes collection.
            cas.HighPriorityAttributes.Add("NewAttribute", _
            "NewF1Keyword", vsContextAttributeType. _
            vsContextAttributeLookupF1)
            ListAttr(ca, cas)
            ' Remove the new high priority attribute.
            cas.HighPriorityAttributes.Item(1).Remove()
            ListAttr(ca, cas)
        Catch ex As System.Exception
            MsgBox("ERROR: " & ex.Message)
        End Try
    End Sub

    Function ListAttr(ByVal ca As ContextAttribute, ByVal cas As _
    ContextAttributes)
        Dim msg As String

        Try
            ' List regular attributes, their first value, and their count.
            For Each ca In cas
                msg = msg & ca.Name & "  " & ca.Values(0) & vbCr
            Next
            cas.Refresh()
            MsgBox("All Attributes: " & vbCr & msg & "Count: " & _
            cas.Count)

            ' List high-priority attributes, their first value, 
            ' and their count.
            msg = ""
            For Each ca In cas.HighPriorityAttributes
                msg = msg & ca.Name & "  " & ca.Values(0) & vbCr
            Next
            cas.Refresh()
            MsgBox("High-Priority Attributes: " & vbCr & msg & "Count: " _
            & cas.HighPriorityAttributes.Count)
        Catch ex As System.Exception
            MsgBox("ERROR: " & ex.Message)
        End Try
    End Function

Community Additions

ADD
Show:
© 2014 Microsoft