Alles klar - du suchst falsch!!

Hier mal mein Code - ist zwar C# - aber der Fehler ist ganz leicht ersichtlich!!
/// <summary>
        /// Zusammenfassung f�r test.
        /// </summary>
        public class test : System.Web.UI.Page
        {
                protected PlaceHolder Content;
                protected Button Weiter;
                private void Page_Load(object sender, System.EventArgs e)
                {
                        // Hier Benutzercode zur Seiteninitialisierung einf�gen
                        Control myCont = Page.LoadControl("testcont.ascx");


// Hier ist Dein Fehler - Dein per LoadControl geladenes Control 
// hat keine ID! - Damit bekommt er ne Standart ID
                        myCont.ID = "testcont";

// Du mu�t einfach eine setzen!

                        Weiter.Click += new EventHandler(Button_click);
                        this.Content.Controls.Add(myCont);
                }
                protected void Button_click(object sender, EventArgs e)
                {
// Dann kanste �ber diese ID - nach dem Control suchen - dann geht es ! 
// �ber den Namen - den du per LoadControl("....") genommen hast - findest Du das nie!

                        Control myCont = this.Content.FindControl("testcont");
                        if (myCont != null)
                                Page.Response.Write("gefunden");
                        else
                                Page.Response.Write("nicht gefunden!");
                }

-----Urspr�ngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Thomas Beckert
Gesendet: Freitag, 20. Februar 2004 17:12
An: [EMAIL PROTECTED]
Betreff: Re: [Asp.net] benutzerdefinierte controls ..


mh. genauso mache ich es eigentlich auch:
Sub Page_Load(Sender As Object, E As EventArgs)
Session("Frage") = 0
Dim holderControl As Control
holderControl = LoadControl("teilnehmer.ascx")
placeHolder.Controls.Add(holderControl)
End Sub

in meiner button funktion mache ich dann das:
'L�dt das n�chste Control in den Place Holder
Sub Weiter_Click(sender As Object, e As EventArgs)
Dim verify As String
Select Case Session("Frage") '
Teilnehmer Registrierung
Case 0
Dim holderControl As Control
holderControl = placeHolder.FindControl("teilnehmer.ascx")
verify = CType(holderControl,teilnehmer).insertData("xyz")

bekomme dann aber eine nullReferenceException ...

----- Original Message ----- 
From: "Pessner, Andreas" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Friday, February 20, 2004 5:11 PM
Subject: AW: [Asp.net] benutzerdefinierte controls ..


Nein - Du kannst Controls in Controls schachtel - ist kein Thema - geht!

Du mu�t aber dann die FindControl Methode - �ber den PlaceHolder nehmen!

Sollte dann so aussehen!

Page
myPlaceHolder
myControl

Page.FindControl("myControl") -> w�rde null ergeben!

myPlaceHolder.FindControl("myControl") -> sollte das Control finden!

Dazu mu� aber das Control - quasi jedes mal geladen werden - und auch dem 
myPlaceHolder hinzugef�gt werden!

-----Urspr�ngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Thomas Beckert
Gesendet: Freitag, 20. Februar 2004 16:57
An: ASP.NET
Betreff: [Asp.net] benutzerdefinierte controls ..


so - um es nochmal zusammenzufassen und in der hoffnung, eine schnelle antwort zu 
bekommen:

ich habe ein benutzerdefiniertes control. das besteht aus script und html code. binde 
ich dieses control �ber die tag-prefix geschichte ein, funktioniert das auch 
problemlos. nur wenn ich 10 controls direkt einbinde, wird das viewstate riesig und 
das ganze ist nicht sauber und �bersichtlich.

daher will ich dieses control dynamisch einbinden. das geht ja mit einem place holder 
und load control, bzw. register control. soweit bin ich auch schon. wie ihr nun alle 
bestimmt auch schon mitbekommen habt, habe ich probleme, das control wieder zu finden. 
mit add f�ge ich es dem placeholder hinzu, aber die findControl-methode findet das 
control einfach nicht mehr (bekomme eine null-referenz zur�ck)....

jetzt meine frage - bin ich �berhaupt auf dem richtigen weg oder kann man 
benutzerdefinierte controls nur einbinden, wenn dort reiner code drin steht? (glaub 
ich ja nicht ...) ...

habe mich schon tot gegoogelt aber nie wirklich das gefunden, was mir eine antwort auf 
mein problem liefert...

_______________________________________________
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