panel alles klar
Ich würde gerne einen reset-panel in den Ausgangszustand. Z.B. habe ich ein Bild als hintergrund, ich zeichnete Grafiken auf einem Teil der Platte. Ich habe um alles zu löschen. Wie?
- kann Sie nur aufgeben, das alte und erstellen zuweisen
new Panle();
auf die Referenz? - Ich nehme an, Sie sind mit dem designer zur compile-Zeit, und Sie möchten, dass "klar" das panel zur Laufzeit ? Welche anderen änderungen müssen Sie klar, mehr details wären nett.
- B: ich brauche nur zu deaktivieren Sie das Bedienfeld. Ich schrieb eine Eigenschaft "ClearPanel", darin habe ich versucht \n-1. den hintergrund = null \n 2. panel.Controls.Clear () ;, aber nichts funktioniert.
- Rauf K: Eine Eigenschaft oder eine Methode ? Haben Sie daran gedacht aufrufen suspendLayout() und resumeLayout(true) für die änderung, sind Sie sicher, dass Ihre Methode aufgerufen wird ?
- Auch panel.controls.clear() funktioniert nicht bedeutet, das ist seltsam dann
- Keine der vorgeschlagenen Lösung für mich gearbeitet.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie deaktivieren Sie das panel zuerst
rufen Sie dann die ursprüngliche form zurück.
Verwenden Sie den folgenden code, um zu löschen alle Grafiken aus dem panel
Wenn es etwas gibt, müssen Sie zum panel hinzufügen ursprüngliche Zustand dann nach dem Aufruf von invalidate Sie wieder an jene Dinge.
Wenn der ursprüngliche Zustand der Paneele muss einige Grafiken oder Daten können Sie setzen, dass in der Systemsteuerung die Grafik Ereignis, also jedes mal ungültig ist Ihr panel bekommen, der erste Staat mit dieser Elemente.
Verwenden Sie die
panel1.refresh();
Befehl. Es setzt das panel auf den Ausgangszustand.Dass ist die einzige Lösung, die für mich gearbeitet:
Hier ist SO ein link, dass sieht genau das zu tun, was Sie wollen:
Zurücksetzen eines Windows forms-Elemente initialisiert Zustand (C#/.Net)