Verschieben von Steuerelementen von Einer Registerkarte zu einer Anderen
Ich derzeit arbeite auf einem Windows forms-Projekt, in dem es mehrere verschiedene Registerkarten. Innerhalb jeder Registerkarte gibt es verschiedene Bedienelemente, wie Taster, sub-tabs, text-Boxen, ect...
Ich die Notwendigkeit der Konsolidierung der Gesamt-Anwendung, die beinhaltet, dass bestimmte Steuerelemente aus einer Registerkarte und verschieben Sie Sie in einen anderen. Wenn ich das erste mal versucht, so zu tun, die ich einfach kopieren und einfügen der Steuerelemente. Wie Sie sich vorstellen können, das hat nicht funktioniert aufgrund der Tatsache, dass ich nicht bewegen Sie die Eigenschaften der Steuerelemente, die ich wirklich nur NEUE geschaffen, die auf einer anderen Registerkarte. Also wenn ich befolgt den code, nichts funktionierte, weil es war kein code zugewiesen, um die neuen Kontrollen.
Als ich es wieder versucht, diesmal habe ich AUSSCHNEIDEN und einfügen, die auch behält die gleichen Eigenschaften wie die alten Kontrollen (insbesondere der name der Referenz im code), so weit ich es sagen kann, sollte der code identifizieren Sie die Steuerelemente mit Namen, und die gleichen Aktionen. Allerdings, wenn ich den code kompilieren, wird die Anwendung erfolgreich builds, aber die Kontrollen führen keine Aktionen aus.
In diesem Punkt bin ich nicht sicher, was zu tun...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe es gerade getestet. Was passiert, wenn Sie Ausschneiden und einfügen-Steuerelemente, verlieren Sie die Verdrahtung der Ereignisse. Was Sie tun müssen nach dem Ausschneiden und einfügen ist gehen Sie zu-control -
properties-events
finden Sie die Veranstaltung in Frage und auf der rechten Seite, wählen Sie eine Methode, die Sie behandeln möchten, die Veranstaltung.Verwenden Sie die Gliederung des Dokuments.
Ansicht... Andere Windows - ... Dokumentgliederung.
Wählen Sie die gewünschte Komponente und ziehen Sie es von einer Registerkarte zur anderen in der Baumstruktur. Ich Tat dies, und die Aktionen sind erhalten in der neuen tab Seite.
Ziehen Sie das Objekt aus dem Registersteuerelement und auf das Formular selbst. Ändern Sie auf der Registerkarte andere. Dann ziehen Sie das Element in die tab. Es ist im wesentlichen 2 ziehen Sie bewegt sich, aber da Sie nicht immer schneiden, alle code-Verlinkung beibehalten wird. Wenn Sie Ihre tab-control nimmt das ganze form, einfach kleiner machen, während Sie die vorherigen Schritte, und dann machen Sie es groß wieder, wenn Sie fertig sind.
Wenn Sie "schneiden" die Kontrollen, trennen Sie die verbindungen zwischen den Steuerungen und Ihren jeweiligen Ereignissen. Wenn Sie "einfügen" wieder, Sie sind nicht angeschlossen an die Ereignisse mehr auf, so erscheinen Sie nicht zu tun nichts.
Den "event" - Methoden sollte immer noch vorhanden sein, in Ihrem code, aber Sie müssen manuell durch gehen und "abonnieren" jedes Ereignis, auf jede Kontrolle wieder (über die Eigenschaften).
Alternativ wiederherstellen Sie diese änderungen, und öffnen Sie dann die
.Designer.cs
- Datei und suchen Sie nach so etwas wie dieses:Welche (zum Beispiel) Orte
dataGridView1
innentabPage1
.Wenn Sie wollte, um die "DataGridView", um eine andere TabPage, könnte man nur ändern
this.tabPage1
im obigen code zuthis.tabPage2
.Dann können Sie zurück Blättern über die designer-Ansicht und bewegen Sie die Steuerung um, um dort, wo Sie es wollen, in der TabPage.
Dies wird schneiden Sie von der ersten TabPage und fügen Sie Sie auf die zweite, ich denke, Sie können dies tun, so oft wie Sie wollen. Und mit einer kleinen änderung, die Sie machen es einem wirklich zu kopieren.
hoffe es hilft