ArcFM Solution Developer Guide
DisplayString Method (IMMDisplayNamer)






IRow
The DisplayString method determines the attributes that will be visible in a feature's display name when the object is assigned.
Syntax
'Declaration
 
Function DisplayString( _
   ByVal pRow As ESRI.ArcGIS.Geodatabase.IRow _
) As System.String
'Usage
 
Dim instance As IMMDisplayNamer
Dim pRow As ESRI.ArcGIS.Geodatabase.IRow
Dim value As System.String
 
value = instance.DisplayString(pRow)
System.string DisplayString( 
   ESRI.ArcGIS.Geodatabase.IRow pRow
)
function DisplayString( 
    pRow: ESRI.ArcGIS.Geodatabase.IRow
): System.String; 
function DisplayString( 
   pRow : ESRI.ArcGIS.Geodatabase.IRow
) : System.String;
System.string* DisplayString( 
   ESRI.ArcGIS.Geodatabase.IRow* pRow
) 
System.String^ DisplayString( 
   ESRI.ArcGIS.Geodatabase.IRow^ pRow
) 

Parameters

pRow
IRow

Return Value

String
Remarks
 
Example
The following code sample demonstrates how the IMMDisplayNamer::DisplayString method may be implemented.
Visual Basic Copy Code
Private Function IMMDisplayNamer_DisplayString(ByVal pRow As IRow) As String

    Dim pFields As IFields
    Set pFields = pRow.Fields
    Dim pCVDomain As ICodedValueDomain

    'Get FacilityID, RatedKVA, PhaseDesignation field indices
    Dim lFacilityIDIndex As Long
    lFacilityIDIndex = pFields.FindField(FacilityID)

    Dim lRatedKVAIndex As Long
    lRatedKVAIndex = pFields.FindField(RatedKVA)

    Dim lPhaseDesigIndex As Long
    lPhaseDesigIndex = pFields.FindField(PhaseDesignation)

    'Assemble individual display strings
    Dim sDisplayString As String
    Dim sFacilityID As String
    Dim sRatedKVA As String
    Dim sPhaseDesignation As String

    'Store FacilityID field value
    If VarType(pRow.Value(lFacilityIDIndex)) = vbNull Then
        sFacilityID = g_pLocal.GetString(S101_Null)
    Else
        sFacilityID = CStr(pRow.Value(lFacilityIDIndex))
    End If

    'Store RatedKVA field value
    Dim lRatedKVAValue As Long

    If VarType(pRow.Value(lRatedKVAIndex)) = vbNull Then
        sRatedKVA = g_pLocal.GetString(S101_Null)
    Else
        lRatedKVAValue = pRow.Value(lRatedKVAIndex)

        'Get appropriate RatedKVA code description from subtype domain
        'or default domain
        Set pCVDomain = GetCVDomain(pRow, lRatedKVAIndex)

        If Not pCVDomain Is Nothing Then
            sRatedKVA = GetCVDescFromCode(pCVDomain, lRatedKVAValue)
            sRatedKVA = Mid(sRatedKVA, 1, InStr(1, sRatedKVA, "k", vbTextCompare) - 2)
            sRatedKVA = sRatedKVA & " KVA"
        Else
            sRatedKVA = "KVA Code: " & CStr(lRatedKVAValue)
        End If
    End If

    'store phasedesignation field value
    Dim lPhaseDesignationValue As Long

    If VarType(pRow.Value(lPhaseDesigIndex)) = vbNull Then
        sPhaseDesignation = g_pLocal.GetString(S101_Null)
    Else
        lPhaseDesignationValue = pRow.Value(lPhaseDesigIndex)

        'Get appropriate PhaseDesignation code description from subtype domain
        'or default domain
        Set pCVDomain = GetCVDomain(pRow, lPhaseDesigIndex)

        If Not pCVDomain Is Nothing Then
            sPhaseDesignation = GetCVDescFromCode(pCVDomain, lPhaseDesignationValue)
        Else
            sPhaseDesignation = "Phase Code: " & CStr(lPhaseDesignationValue)
        End If
    End If

    sDisplayString = sFacilityID & " - " & sRatedKVA & " - " & sPhaseDesignation

    'Return display string
    IMMDisplayNamer_DisplayString = sDisplayString

End Function

 

Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

IMMDisplayNamer Interface
IMMDisplayNamer Members

Send Feedback