VisualBasic.PowerPacks.LineShape

11/03/2008 - 10:02 von Volker Friedrich | Report spam
Hallo,
habe eine LineShape (VisualBasic.PowerPacks.LineShape) per Code erstellt und
der Picturebox1 hinzugefügt.

Auf die erstellte LineShape greife ich spàter per Code zu, um Eigenschaften
(z.B. Name) abzufragen.
Der Zugriff funktioniert, die Eigenschaftsabfrage aber nicht.

Die Picturebox1 enthàlt noch ein Label, auch per Code hinzugefügt.
Bei diesem Steuerelement funktioniert der Zugriff und die Abfrage der
Eigenschaften.


For Each ctrlVar In Picturebox1.Controls

'Picturebox1.Controls erkennt die LineShape und Label, gibt aber für
LineShape nur den wert="" aus

strName = ctrlVar.Name 'statt ="Line" kommt ="" ; bei Label ist alles
ok
strTag = ctrlVar.Tag 'statt ="1" kommt ="" ; bei Label ist alles ok

next

Vermute das Problem bei der LineShape, wegen des PowerPacks?


Danke im Voraus
Volker
 

Lesen sie die antworten

#1 Peter Götz
11/03/2008 - 10:43 | Warnen spam
Hallo Volker,

habe eine LineShape (VisualBasic.PowerPacks.LineShape)
per Code erstellt und der Picturebox1 hinzugefügt.



Hast Du selbst ein entspr. UserControl erstellt oder eines
aus diesem PowerPack genommen?

Auf die erstellte LineShape greife ich spàter per Code
zu, um Eigenschaften (z.B. Name) abzufragen.
Der Zugriff funktioniert, die Eigenschaftsabfrage aber nicht.



Funktioniert sie wirklich nicht, oder ist der Name-Eigenschaft
eben einfach nie ein Wert ("DerName") zugewiesen worden?


Die Picturebox1 enthàlt noch ein Label, auch per Code
hinzugefügt. Bei diesem Steuerelement funktioniert der
Zugriff und die Abfrage der Eigenschaften.



Da Du dieses Label vermutlich via Designer auf Deine
PictureBox gezogen hast, hat der Designer die Name-
Eigenschaft autom. mit einem entspr. String belegt.

For Each ctrlVar In Picturebox1.Controls

'Picturebox1.Controls erkennt die LineShape und
Label, gibt aber für LineShape nur den wert="" aus

strName = ctrlVar.Name
'statt ="Line" kommt ="" ; bei Label ist alles ok



Und was passiert, wenn Du vorher

ctrlVar.Name = "EinName"

und danach

strName = ctrVar.Name

schreibst?


strTag = ctrlVar.Tag
'statt ="1" kommt ="" ; bei Label ist alles ok

next



Gruß aus St.Georgen
Peter Götz
www.gssg.de (mit VB-Tipps u. Beispielprogrammen)

Ähnliche fragen