Welches Ereignis tritt ein, unmittelbar nach einem Steuerelement angezeigt wird, für das erste mal?

Ich weiß, es ist UserControl.Load, die Auftritt, bevor das Steuerelement sichtbar wird für die erste Zeit. Und ich weiß, es ist UserControl.HandleCreated, die Auftritt, wenn ein handle ist geschaffen für die Kontrolle.

Aber ich bin auf der Suche für das, was Ereignis tritt ein, wenn die Steuerung tatsächlich zum ersten mal gezeigt.

Grund:

Ich bin den Umgang mit einer DataGridView die eine Reihe von Daten, die in Sie gesteckt werden, bevor das Steuerelement angezeigt wird. Ich kann nicht die Farbe der Zeilen ( BackColor ), ohne die Steuerung ist gemalt (die Befehle einfach nicht funktionieren). Die Befehle, auf die Farbe der Zeilen funktioniert nur, wenn die Steuerung wurde zum ersten mal bemalt. So brauche ich, um zu erfassen, dass die Veranstaltung und einfärben der Zeilen an dieser Stelle.

dataGridView1.Rows[index].DefaultCellStyle.BackColor = Color.Red;

Die obige Zeile funktioniert, wenn das Steuerelement wird angezeigt aber funktioniert nicht mit der Steuerung ist nicht gezeigt.

  • Haben Sie versucht, die RowPrePaint oder RowPostPaint Veranstaltung?
  • nicht ganz sicher, aber ich würde gerne empfehlen msdn.microsoft.com/en-us/library/... die DataBindingComplete Veranstaltung. Wie es sich auch mit dem resize-Ereignisse, je nach Inhalt, dieser sollte ( imho ) arbeiten vor Ihrer Malerei aswell
  • Warum kann man nicht überschreiben OnPaint?
  • Die Veranstaltung, nachdem das Steuerelement geladen wird, und, bevor es gerendert wird, heisst OnPreRender.
Schreibe einen Kommentar