Propocjonalny resize formy

0

Witam. Chciałbym żeby przy zmianie rozmiaru okna zachować jego propocje np. 4x3. Mam taki kod:

Size proporcje = new Size(4, 3);
private void Form1_Resize(object sender, EventArgs e)
{
    this.Size = new Size(this.Width, this.Width * 3 / proporcje.Width);
}

Jednak działa to mało wydajnie ponieważ powoduje "migotanie" w trakcie zmieniania rozmiaru formy... Ma ktoś pomysł jak zrobić to wydajniej? Z góry dzięki za każdą pomoc :)

0

wlacz podwojne buforowanie
szukaj double buffering

0

Niestety to nic nie zmienia, forma nadal miga :-/

0

sa jeszcze zdarzenia ResizeBegin i ResizeEnd
sprobuj zrobic to na ResizeEnd, bo Resize wykonuje sie ciagle podczas przeciaganie, a ResizeEnd wykona sie raz po zakonczeniu zmieniania rozmiaru, oczywiscie podczas rozciagania bedzie mozna uzyskac dowolny rozmiar, a dopiero po puszczeniu przycisku nastapi zmiana

0

No właśnie, a może Suspendlayout() w ResizeBegin i ResumeLayout() w ResizeEnd?

1 użytkowników online, w tym zalogowanych: 0, gości: 1