Laden...

Seltsames Verhalten eines Bitmaps bei panel.AutoScrollMinSize

Erstellt von phlasher vor 17 Jahren Letzter Beitrag vor 17 Jahren 1.937 Views
P
phlasher Themenstarter:in
13 Beiträge seit 2005
vor 17 Jahren
Seltsames Verhalten eines Bitmaps bei panel.AutoScrollMinSize

Hallöchen...

in der Paint-Methode eines Panels mache ich folgendes: (_offscreen ist eine private Klassenvariable vom Typ Bitmap)


if (_offscreen == null)
{
    _offscreen = new Bitmap((int)Math.Round(pnlInfoContentPaintElement.Width * _ZOOM), (int)Math.Round(pnlInfoContentPaintElement.Height * _ZOOM));
    Graphics g = Graphics.FromImage(_offscreen);
    pnlInfoContentPaintElement.AutoScrollMinSize = new Size((int)Math.Round(SmashedBoundary.Width * _CurrentElementScale.Factor * _ZOOM), (int)Math.Round(SmashedBoundary.Height * _CurrentElementScale.Factor * _ZOOM));

...
...
}

Die Werte in der Zuweisung zu AutoScrollMinSize sind korrekt und es kommt eine sinnvolle Size dabei raus...
jedoch ist _offscreen direkt nach dieser Zuweisung wieder null!
Und zwar egal wann und wo ich diese Zuweisung mache... immer genau danach wird _offscreen wieder null... 8o
Und zwar immer genau dann, wenn AutoScrollMinSize tatsächlich größer ist, als das Panel, also wenn eig. Scrollbars angezeigt werden müssten...

finde ich sehr seltsam 😉

jemand ne Idee??

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo phlasher,

der einzige Weg, dass eine Variable null wird, ist sie (direkt oder indirekt) null zusetzen. Von alleine passiert das nicht.

herbivore

6.862 Beiträge seit 2003
vor 17 Jahren

Welchen Wert hat _ZOOM bei dir?

Baka wa shinanakya naoranai.

Mein XING Profil.

P
phlasher Themenstarter:in
13 Beiträge seit 2005
vor 17 Jahren

Original von herbivore
der einzige Weg, dass eine Variable null wird, ist sie (direkt oder indirekt) null zusetzen. Von alleine passiert das nicht.

ja gell, sollte so sein 😉

@ talla: _ZOOM hat einen Wert größer 1.0... dieser Wert ist ja dafür verantwortlich, dass die AutoScrollMinSize größer wird, als das Panel.. wenn also _ZOOM > 1.0 (und nicht = 1.0) ist, tritt dieses Verhalten auf.

Sorry, dass ich den Thread so lange habe liegen lassen, war ein paar Tage unterwegs...

Gruß, phlasher

P
phlasher Themenstarter:in
13 Beiträge seit 2005
vor 17 Jahren

ok.
Das Setzen von AutoScrollMinSize feuert das SizeChanged-Event vom Panel, in dem ich die entsprechenden Null-Setzungen vornehme...
Seufz... hätt ich ja auch mal schneller drauf kommen können!!!! GRRRR! 😉

Danke trotzdem für die Hilfe!

<--> kann geclosed werden!

Gruß, phlasher

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo phlasher,

wir lassen alle Threads offen, außer die Diskussion läuft aus dem Ruder o.ä. Wenn dir daran liegt, das Problem als [gelöst] zu kennzeichnen, kannst du den Forentitel entsprechend ändern.

herbivore