Laden...

UserControls und multi instance problem (singleton?)

Erstellt von legio vor 15 Jahren Letzter Beitrag vor 15 Jahren 1.387 Views
L
legio Themenstarter:in
10 Beiträge seit 2007
vor 15 Jahren
UserControls und multi instance problem (singleton?)

Hallo zusammen,

ich habe des öfteren das problem dass ich ein UserControl habe in dem ich (public) Properties habe, die ich zur Laufzeit setze. Und typischerweise bekomme ich es immer hin dass neue Instanzen von den usercontrols erzeugt werden, was natürlich zur folge hat, dass die gesetzten properties kaputt sind. Das mehrere Instanzen erzeugt werden ist sicher. Ich habe einen Default konstruktur explizit definiert und Debug Output erzeugt. Wie bekomme ich dieses Problem in geregelte Bahnen? Das muss doch ein common scenario sein, nicht? 😕

Schöne Grüße

J
537 Beiträge seit 2007
vor 15 Jahren

Hallo,

was genau willst du erreichen? Ich verstehe das problem leider nicht ganz. Was ist dein eigentliches Problem?
Einen neue Instanz eines Controls erfordert selbsverständlich, dass Properties neu gesetzt werden müssen.

J
1.114 Beiträge seit 2007
vor 15 Jahren

Deine UserControl Instanzen sind ja erstmal unabhängig voneinander. Und neu erzeugte UserControls erhalten natürlich nicht die gesetzten Properties eines bereits existierenden UserControls.

Die Frage ist, was passieren soll, wenn du nachträglich, also wenn bereits mehrere Instanzen existieren, eine Property änderst.

  1. Wenn dann auch lediglich die Property des betroffenen Controls geändert werden soll, und die anderen unberührt bleiben soll, dann würde ich einen Constructor definieren, der ein UserControl Objekt als Parameter erhält. Im Konstrukor kannst du dann die Properties des neuen Controls setzen nach dem Muster des Controls im Parameter. Nachträgliches Setzen von aussen der Property betrifft dann nur die angesprochene Instanz.

  2. Wenn dann für alle Controlinstanzen diese Property angepasst werden soll, dann nutze doch einfach statische Properties des UserControls, denn dann ist es ja keine Eigenschaft mehr der Instanz, sondern eine Eigenschaft der Klasse. Ein Singleton ist an dieser Stelle fehl am Platz, denn wir reden ja immer noch von gleichen Klassen. Also gehören solche Dinge auch in die Klasse rein.

5.942 Beiträge seit 2005
vor 15 Jahren

Hallo zusammen

@Jelli
Du redest jetzt von WindowsForms, oder?

Ansonsten dito mit Jürgen: legio, bitte mehr Infos.

Gruss Peter

--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011

J
1.114 Beiträge seit 2007
vor 15 Jahren

Du redest jetzt von WindowsForms, oder?

Och Mensch, Peter. Da hab ich mir extra soviel Mühe gemacht und alles schön breit erläutert... Und ich Depp hab mal wieder nicht geschnallt, dass es sich um eine Webapplikation handelt. :evil:

5.942 Beiträge seit 2005
vor 15 Jahren

Salut Jelly

Mach dir nichts draus, ist mir auch schon passiert 😉
Wichtig ist, dass du helfen wolltest.

Gruss Peter

--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011