Ich habe eine einfache Form wie die folgenden:Warum wird mein Windows Form nicht neu gezeichnet, wenn die Größe des Fensters geändert wird?
using System;
using System.Drawing;
using System.Windows.Forms;
namespace PaintTest
{
class PaintTest : Form
{
int _counter = 0;
[STAThread]
static void Main()
{
Application.Run(new PaintTest());
}
protected override void OnPaint(PaintEventArgs e)
{
e.Graphics.DrawString(_counter.ToString(), new Font(FontFamily.GenericSerif, 10.0f), Brushes.Blue, 10.0f, 10.0f);
_counter++;
}
}
}
Wenn die Fenstergröße verändert wird, wird der Zähler nicht auf dem Bildschirm zu aktualisieren angezeigt wird, obwohl OnPaint()
und der Zähler erhöht genannt zu werden. Wie kann ich das Formular neu zeichnen, wenn die Größe des Fensters geändert wird?
Wenn das Formular, um eine InitializeComponent() -Aufruf hat, würden Sie diesen Stil vor oder nach der Einstellung? oder ist es nicht wichtig? – Svish
das war übrigens eine schnelle Antwort auf deine eigene Frage ... – Svish
Svish, ich habe es gerade getestet und es ist egal. Re: die schnelle Antwort - Ich hatte es gerade nach einem frustrierenden Morgen ausgearbeitet und wollte die Liebe teilen! :-) –