Andreas - du bist mein Gott. :)
das wars. es funzt. ich bin gl�cklich. du hast mein wochenende gerettet...
in diesem sinne w�nsche ich dir ein ebenso sch�nes wochenende.

gruss -

tom

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


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

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

Antwort per Email an