Hallo zusammen,
ich habe hier ein merkwürdiges Phänomen, vielleicht kann es ja wer erklären:
Ich habe in einem Bauteil mehrere Arbeitsebenen per Programm erstellt.
An diese hänge ich Attribute, die von einer anderen procedure ausgelesen werden. In dieser (anderen) procedure lasse ich die AE mittels SelectionEvents auswählen. Als Code habe ich das Beispiel der Class clsSelect aus den Onlinehilfe verwendet (siehe Anhang).
So, die Attribute sind nicht da, wenn ich die AE auswähle:
Dim oSelectWP As WorkPlane
Dim cSelect As New clsSelect
oSelectWP = cSelect.Pick(SelectionFilterEnum.kWorkPlaneFilter)
Die Auswahl funktioniert so weit (oSelectWP.Name ist richtig), aber
oSelectWP -> AttributeSets -> Count steht auf 0
Wenn ich aber "von hinten durch die Brust in Auge schieße" und die AE als "Child" des "Parent" der AE suche:
oPartCompDef = oSelectWP.Parent
Dim oWP As WorkPlane = Nothing
For n As Integer = 4 To oPartCompDef.WorkPlanes.Count
If oPartCompDef.WorkPlanes.Item(n).Name = oSelectWP.Name Then
oWP = oPartCompDef.WorkPlanes.Item(n)
End If
Next
... dann sind die Attribute da: oWP -> AttributeSets -> Count=1
Diese "Lösung" ist aber unbefriedigend, weil man eine AE umbenennen kann, und dann habe ich ein Problem...
(Die AE hat ein Attribut "InternalName", worüber ich sie eindeutig identifizieren will.)
Christoph
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP