Das ist nicht immer sehr praktisch, da sie deutlich komplexer sind. Der
zusaetzliche Nutzen ist dabei nicht immer relevant (Einfachere Konfiguration
zur Entwurfszeit) und haeufig nichteinmal notwendig. Es ist einfach eine
Fall zu Fall Entscheidung. Performancevorteile oder andere Vorteile gibt es
nicht. (Ausser die Moeglichkeit s.o., die einfache Moeglichkeit ueberm GAC
es in anderen Projekten einzubinden und die Moeglichkeit einen Lizensschutz
mit einzubinden)

-----Message d'origine-----
De�: Andre Seifert [mailto:[EMAIL PROTECTED] 
Envoy�: mercredi 20 ao�t 2003 11:54
��: [EMAIL PROTECTED]
Objet�: AW: [Asp.net] Controls dynamisch laden

Also f�r den Fall, dass du unbedingt *.ascx Controls haben willst, probier
es bitte mit der LoadControl-Methode.

Andernfalls: ich nehme f�r solche Controls (die man dynamisch
laden/platzieren will) ein WebCustomControl...



> -----Urspr�ngliche Nachricht-----
> Von: [EMAIL PROTECTED] 
> [mailto:[EMAIL PROTECTED] Im Auftrag von Stadelmann Patrick
> Gesendet: Mittwoch, 20. August 2003 10:35
> An: [EMAIL PROTECTED]
> Betreff: Re: [Asp.net] Controls dynamisch laden
> 
> Ich habs folgenderma�en gemacht:
> 
> switch(CentralTab.SelectedIndex)
> {
> case 0:
>     namespace.controls._class1 objClass1 = new 
> namespace.controls._class1();
>     PlaceHolder.Controls.Clear();
>     PlaceHolder.Controls.Add(objClass1);
>     break;
> case 1:
>     namespace.controls._class2 objClass2 = new 
> namespace.controls._class2();
>     PlaceHolder.Controls.Clear();
>     PlaceHolder.Controls.Add(objClass2);
>     break;
> .....
> }
> 
> Nun hat er bei mir folgenden Fehler gebracht: "Eine Instanz 
> der abstrakten Klasse oder Schnitstelle 
> 'namespace.controls._class1' konnte nicht erstellt werden."
> Dieser Fehler tritt in der Zeile auf, wo ich das Objekt 
> erstelle: objClass1 oder objClass2.
> 
> Um den Fehler zu beheben hab ich in den entsprechenden 
> Controls die Klasse ge�ndert.
> Standardm��ig hat die Klasse wie folgt ausgesehen:
> 
> namespace namespace.controls
> {
>     ....
>     public abstrakt class _class1 : System.Web.UI.UserControl
>     {
>         ....
>     }
> }
> 
> -------------------------------------
> nun ge�ndert (nicht mehr abstrakt):
> -------------------------------------
> 
> namespace namespace.controls
> {
>     ....
>     public class _class1 : System.Web.UI.UserControl
>     {
>         ....
>     }
> }
> 
> so funktioniert zwar das erstellen der Instanz und das 
> hineinladen der Klasse, jedoch hab ich dadurch ein anderes 
> Problem. Nun kommt mir der Fehler (egal welches Control ich einlese):
> 
> "Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt."
> 
> Er erkennt mir kein Objekt mehr. Der Fehler tritt beim ersten 
> Objekt auf, auf das ich zugreife. Egal ob es ein Button, 
> Label, .... ist. Wenn ich nur in "private void 
> InitializeComponent" einem Button.click einen Event hinzuf�ge 
> kommt schon der Fehler. Wenn ich das unter Kommentar setzte, 
> kommt der Fehler halt beim n�chsten Objekt auf das ich zugreife.
> Die Objekte sind alle definiert, deklariert und er m�sste 
> jedes Objekt kennen.
> 
> ----- Original Message -----
> From: "Andre Seifert" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Wednesday, August 20, 2003 9:28 AM
> Subject: AW: [Asp.net] Controls dynamisch laden
> 
> 
> Empfehlung: Controls, die dynamisch "geladen" werden, immer 
> in einen fest platzierten Placeholder o.�. laden.
> 
> So, wie macht man es:
> 
> Ganz einfach, du erzeugst eine Instanz deiner Klasse und 
> f�gst sie an den Placeholder an.
> 
> 
> [DeinNamespace].[KlassennameDeinesControls] obj = new 
> [DeinNamespace].[KlassennameDeinesControls]();
> 
> PlaceHolder1.Controls.Add(obj);
> 
> 
> Oder, eine andere Variante ist mit LoadControl...
> 
> PlaceHolder1.Controls.Add(LoadControl("yourcontrol.ascx"));
> 
> 
> Du kannst auch ascx-Dateien als Templates f�r Repeater oder 
> Datalist verwenden. Aber das weiss ich jetzt nicht mehr aus 
> dem Hut, wie das geht
> *sch�m*
> 
> 
> 
> > -----Urspr�ngliche Nachricht-----
> > Von: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED] Im Auftrag von 
> Stadelmann Patrick
> > Gesendet: Mittwoch, 20. August 2003 09:02
> > An: [EMAIL PROTECTED]
> > Betreff: [Asp.net] Controls dynamisch laden
> >
> > morgen,
> > ich binde meine Controls ganz einfach ein
> >
> > <%@ Register TagPrefix="Control" TagName="blabla"
> > Src="/controls/blabla.ascx" %>
> > <%@ Register TagPrefix="Control" TagName="test"
> > Src="/controls/test.ascx" %> ......
> >
> > .......
> > <CONTROL:BLABLA id="ctrBlabla" runat="server" /> <CONTROL:TEST 
> > id="ctrTest" runat="server" /> .......
> >
> > jetzt hab ich geh�rt, dass man Controls auch dynamisch laden kann, 
> > damit nicht der gesamte Input in die Seite geschrieben 
> wird. Ich hab 
> > versucht mich dar�ber schlau zu machen, hab irgendwie nicht das 
> > richtige gefunden.
> > Wenn mir jemand ein Beispiel hat oder einen Link kennt wo 
> dieses Thema 
> > behandelt wird, w�hre ich dankbar.
> >
> > Patrick
> >
> >
> >
> > _______________________________________________
> > Asp.net mailing list
> > [EMAIL PROTECTED]
> > http://www.glengamoi.com/mailman/listinfo/asp.net
> 
> _______________________________________________
> Asp.net mailing list
> [EMAIL PROTECTED]
> http://www.glengamoi.com/mailman/listinfo/asp.net
> 
> 
> _______________________________________________
> Asp.net mailing list
> [EMAIL PROTECTED]
> http://www.glengamoi.com/mailman/listinfo/asp.net

_______________________________________________
Asp.net mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________
Asp.net mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/asp.net

Antwort per Email an