> Du begibts Dich, meiner Ansicht nach, mit dieser Zeile in > eine Endlosschleife. > > c.Controls.Add(this); ruft ja wieder Render auf, das wiederum > c.Controls.Add(this); ausf�hrt usw. usw.
Stimmt, das k�nnte vielleicht das Problem sein, aber wie mache ich weiter? > Benutze doch das Control einfach 2 mal. Das ist ja gerade der Witz gewesen, dass ich eben nur ein Objekt erzeuge, und damit arbeite. Klar, ich kann auch einfach zwei Table Objekte nehmen, daf�r brauche ich dann keinerlei zus�tzliche Klassen. Ich m�chte ein Server Control basteln, welches wie die beiden rechten Controls auf http://microsoft.com/WindowsServer2003/evaluation/performance/tpcc2.mspx aussehen, und jeden beliebigen Content enthalten k�nnen, in meinem Fall sollen es immer Tabellen sein, bei dem die abgeleitete Klasse eine zus�tzliche Eigenschaft "Titel" besitzt. CIAO Michael > > Das erste mal f�r die "Layout-Tabelle" mit �berschrift > > TABELLE1 (TestTable tb1 = new TestTable(); TableRow r = ...) > > ************************************ > **********�BERSCHRIFT*************** > ************************************ > ***TABELLE2 (TestTable tb2=...****** > *** ****** > *** ****** > ************************************ > > > > andre.seifert > @xmmm.de > > > >-----Urspr�ngliche Nachricht----- > >Von: [EMAIL PROTECTED] > >[mailto:[EMAIL PROTECTED] Im Auftrag von Michael Schwarz > >Gesendet: Montag, 24. Februar 2003 11:40 > >An: [EMAIL PROTECTED] > >Betreff: [Asp.net] AW: [Asp.net] AW: [Asp.net] AW: [Asp.net] > >AW: [Asp.net] AW: [Asp.net] Von Table ableiten L�SUNG > > > > > >Das klappt, kein Problem. Was ist aber, wenn Du jetzt > >folgendes bauen m�chtest, vielleicht ist ein Panel zu einfach... > > > >Ich m�chte gerne in einer WebForm ein Control haben, mit dem > >ich genauso wie mit einer Tabelle arbeiten kann, mein Control > >muss also von Table abgeleitet sein. Nun kann ich Zeilen und > >Spalten hinzuf�gen, und meine Tabelle aufbauen. Wenn mein > >Control nun angezeigt werden soll, dann m�chte ich diese > >Tabelle, die ich aufgebaut habe, in eine �bergeordnete Tabelle > >einbauen, in meinem Beispiel in die zweite Zeile. In der > >ersten Zeile taucht meinetwegen ein Titel o.�. auf. > > > >******************** > >* �berschrift * > >******************** > >* * > >* eigentliche * > >* Tabelle * > >* * > >******************** > > > > > > > >public class TestTable : Table > >{ > > private string m_header; > > public string Header > > { > > get { return m_header; } > > set { m_header = value; } > > } > > > > protected override void Render( HtmlTextWriter writer ) > > { > > Table main = new Table(); > > TableRow r = new TableRow(); > > TableCell c = new TableCell; > > c.Text = m_header; > > r.Cells.Add(c); > > main.Rows.Add(r); > > > > r = new TableRow(); > > c = new TableCell(); > > c.Controls.Add(this); // hier tritt dann wohl > >der Fehler auf > > r.Cells.Add(c); > > main.Rows.Add(r); > > > > main.RenderControl(writer); > > } > >} > > > > > > > > > >CIAO > >Michael > > > > > > > > > > > >> -----Urspr�ngliche Nachricht----- > >> Von: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] > >> Im Auftrag von Andre Seifert > >> Gesendet: Montag, 24. Februar 2003 11:26 > >> An: [EMAIL PROTECTED] > >> Betreff: [Asp.net] AW: [Asp.net] AW: [Asp.net] AW: [Asp.net] > >> AW: [Asp.net] Von Table ableiten L�SUNG > >> > >> > >> Okay, habe es mal nachgebaut. > >> Ich weiss allerdings nicht, was genau Dein Problem ist. > >> Du kannst doch aus der �berschriebenen Methode Render > aufrufen, was > >> Du willst/brauchst > >> > >> public class TestPanel : Panel > >> { > >> // Die Datenquelle > >> protected override void Render( HtmlTextWriter writer) > >> { > >> Label lb = new Label(); > >> lb.Text = "Mein Text"; > >> base.RenderBeginTag(writer); > >> lb.RenderControl(writer); > >> base.RenderContents(writer); > >> base.RenderEndTag(writer); > >> } > >> } > >> > >> andre.seifert > >> @xmmm.de > >> > >> > >> >-----Urspr�ngliche Nachricht----- > >> >Von: [EMAIL PROTECTED] > >[mailto:[EMAIL PROTECTED] > >> >Im Auftrag von Michael Schwarz > >> >Gesendet: Montag, 24. Februar 2003 10:59 > >> >An: [EMAIL PROTECTED] > >> >Betreff: [Asp.net] AW: [Asp.net] AW: [Asp.net] AW: [Asp.net] Von > >> >Table ableiten L�SUNG > >> > > >> > > >> >Hi Andre, > >> > > >> >klar, ein einfaches UserControl zu schreiben, welches > >> >objektorientiert HTML zusammenbaut funktioniert so weit bei > >mir auch. > >> >Das Problem ist nur, wenn ich von "Table" ableite, oder von einem > >> >anderen Control, und dieses Control Teil der Ausgabe sein soll. > >> > > >> >Ist Dein Control abgeleitet von einem anderen Control, also z.B. > >> >Panel, Table,...? > >> > > >> >CIAO > >> >Michael > >> > > >> > > >> >> -----Urspr�ngliche Nachricht----- > >> >> Von: [EMAIL PROTECTED] > >> [mailto:[EMAIL PROTECTED] > >> >> Im Auftrag von Andre Seifert > >> >> Gesendet: Montag, 24. Februar 2003 10:50 > >> >> An: [EMAIL PROTECTED] > >> >> Betreff: [Asp.net] AW: [Asp.net] AW: [Asp.net] Von > Table ableiten > >> >> L�SUNG > >> >> > >> >> > >> >> > container.Controls.Add(this); > >> >> > >> >> Was soll denn diese Zeile tun? > >> >> Du befindest Dich im Objekt TestTable, und willst aus > >> dieser Tabelle > >> >> ein Control rendern, dass diese Tabelle beinhaltet... > >> >> > >> >> Also ich habe die Methode Render schon erfolgreich mit einem > >> >> UserControl auch objektorientiert eingesetzt. Mein Control > >> >> (vergleichbar mit Panel) hat Bilder und Labels in sich > >aufgenommen > >> >> und dargestellt. > >> >> > >> >> Label lb = new Label(); > >> >> lb.Text = "Label"; > >> >> > >> >> lb.RenderControl(writer); > >> >> > >> >> > >> >> andre.seifert > >> >> @xmmm.de > >> >> > >> >> > >> >> >-----Urspr�ngliche Nachricht----- > >> >> >Von: [EMAIL PROTECTED] > >> >[mailto:[EMAIL PROTECTED] > >> >> >Im Auftrag von Michael Schwarz > >> >> >Gesendet: Montag, 24. Februar 2003 10:41 > >> >> >An: [EMAIL PROTECTED] > >> >> >Betreff: [Asp.net] AW: [Asp.net] Von Table ableiten L�SUNG > >> >> > > >> >> > > >> >> >Ich habe dazu noch eine Frage: Wie kann ich in der > >Render Methode > >> >> >auch objektorientiert arbeiten? Ich stelle mir folgendes vor: > >> >> > > >> >> >protected override void Render(HtmlTextWriter writer) > >> >> >{ > >> >> > Panel container = new Panel(); > >> >> > container.Style.Add("BACKGROUND-COLOR", "black"); > >> >> > container.Controls.Add(this); > >> >> > > >> >> > container.RenderControl(writer); > >> >> >} > >> >> > > >> >> >Ich bekomme dann immer den Fehler "Exception of type > >> >> >System.StackOverflowException was thrown". > >> >> > > >> >> >CIAO > >> >> >Michael > >> >> > > >> >> > > >> >> >> -----Urspr�ngliche Nachricht----- > >> >> >> Von: [EMAIL PROTECTED] > >> >> [mailto:[EMAIL PROTECTED] > >> >> >> Im Auftrag von > >> >> Andreas Rudischhauser (N) > >> >> >> Gesendet: Samstag, 22. Februar 2003 18:50 > >> >> >> An: [EMAIL PROTECTED] > >> >> >> Betreff: [Asp.net] Von Table ableiten L�SUNG > >> >> >> > >> >> >> > >> >> >> Folgender Code leitet vom TABLE - Tag ab und erstellt > >> >> einen div tag > >> >> >> drumrum. Falls es jemand brauchen kann > >> >> >> > >> >> >> using System; > >> >> >> using System.Text; > >> >> >> using System.Diagnostics; > >> >> >> using System.Collections; > >> >> >> using System.Collections.Specialized; > >> >> >> using System.ComponentModel; > >> >> >> using System.Data; > >> >> >> using System.Data.OleDb; > >> >> >> using System.Web; > >> >> >> using System.Web.SessionState; > >> >> >> using System.Web.UI; > >> >> >> using System.Web.UI.WebControls; > >> >> >> using System.Web.UI.HtmlControls; > >> >> >> using System.Xml; > >> >> >> > >> >> >> namespace ASPNetPortal { > >> >> >> public class TestTable : Table { > >> >> >> // Die Datenquelle > >> >> >> protected override void Render( HtmlTextWriter writer) { > >> >> >> writer.Write("<div style=\"background-color:black\">"); > >> >> >> // Ruft Oberklasse (Table) auf > >> >> >> base.Render(writer); > >> >> >> //Rendert den Inhalt > >> >> >> RenderChildren(writer); > >> >> >> > >> >> >> writer.Write("</div>"); > >> >> >> } > >> >> >> } > >> >> >> } > >> >> >> > >> >> >> _______________________________________________ > >> >> >> 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 > >> > > > >_______________________________________________ > >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
