The DisplayString method determines the attributes that will be visible in a feature's display name when the object is assigned.
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
Dim lFacilityIDIndex As Long
lFacilityIDIndex = pFields.FindField(FacilityID)
Dim lRatedKVAIndex As Long
lRatedKVAIndex = pFields.FindField(RatedKVA)
Dim lPhaseDesigIndex As Long
lPhaseDesigIndex = pFields.FindField(PhaseDesignation)
Dim sDisplayString As String
Dim sFacilityID As String
Dim sRatedKVA As String
Dim sPhaseDesignation As String
If VarType(pRow.Value(lFacilityIDIndex)) = vbNull Then
sFacilityID = g_pLocal.GetString(S101_Null)
Else
sFacilityID = CStr(pRow.Value(lFacilityIDIndex))
End If
Dim lRatedKVAValue As Long
If VarType(pRow.Value(lRatedKVAIndex)) = vbNull Then
sRatedKVA = g_pLocal.GetString(S101_Null)
Else
lRatedKVAValue = pRow.Value(lRatedKVAIndex)
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
Dim lPhaseDesignationValue As Long
If VarType(pRow.Value(lPhaseDesigIndex)) = vbNull Then
sPhaseDesignation = g_pLocal.GetString(S101_Null)
Else
lPhaseDesignationValue = pRow.Value(lPhaseDesigIndex)
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
IMMDisplayNamer_DisplayString = sDisplayString
End Function |
|
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