Ich vermute mal, dass Du zu verquer denkst! Dein UserControl wird gar nicht vom Typ UserControl sein - sondern von UserControl abgeleitet sein!
Somit solltest Du Dir den wirklichen Namen Deines UserControls holen. Wie es genau heißt, findest Du eigentlich in der CodeBehind Seite Deines Controls - und dort ist es nämlich der Klassen Name! Somit solltest Du nicht nach UserControl casten - was logischerweise funktioniert, da Dein Control davon ja abgeleitet ist, sondern vielmehr in den richtigen Typ Deines UserControls. Beispiel: Dein UserControl heißt: UserDetails UserDetails ctrl_Content = (UserDetails)Page.LoadControl("/uc/Content/Content.ascx"); ctrl_Content.ContentID = 1; Das sollte dann so gehen! Dein Workaround macht das ähnlich - wenn auch eher von hinten durch die Brust. Dort wird nämlich auf UserControl (Deine Basisklasse) gecastet - und dann geschaut ob da nicht ein Element existiert was ContentID heißt - und darauf dann der Wert gesetzt. Aber diese Art ist doch eher langsam und auch recht umständlich. -----Ursprüngliche Nachricht----- Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Raphael Saxer Gesendet: Donnerstag, 17. November 2005 19:38 An: asp.net@glengamoi.com Betreff: [Asp.net] AW: [Asp.net] AW: [Asp.net] ID an UserControl übergeben So - vielen Dank für den Denkanstoss. Jetzt läuft es. Aber leider reicht mein Wissen nicht aus um zu erklären warum? Nun sieht es so aus: UserControl ctrl_Content = (UserControl)Page.LoadControl("/uc/Content/Content.ascx"); Type t = ctrl_Content.GetType(); PropertyInfo prop = t.GetProperty("ContentID"); prop.SetValue(ctrl_Content, 1, null); Was läuft da genau ab? (nur falls jemand Zeit hat) Danke und Gruss Raphael -----Ursprüngliche Nachricht----- Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Christoph Cluss Gesendet: Donnerstag, 17. November 2005 18:56 An: asp.net@glengamoi.com Betreff: [Asp.net] AW: [Asp.net] ID an UserControl übergeben kenne mich mit c# nicht so aus... denke mal das UserControl nicht die Klasse deines Controls ist. Du mußt das Control in den entsprechenden Type casten. in VB: Dim m As New MyControl m = CType(LoadControl("MyControl.ascx"), MyControl) Chris > -----Ursprüngliche Nachricht----- > Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] > Auftrag von Raphael Saxer > Gesendet: Donnerstag, 17. November 2005 18:36 > An: asp.net@glengamoi.com > Betreff: [Asp.net] ID an UserControl übergeben > > > Hallo > > Ich versuche hier gemäss den Anweisungen auf der Seite von Thomas > http://blogs.dotnetgerman.com/thomas/PermaLink,guid,781f35f9-7868-4cde-a5e6- > 186b89cbc47f.aspx > eine ID an ein UserControl zu übergeben. Leider gelingt mir das nicht. > > Seite1.aspx > UserControl ctrl_Content = (UserControl)Page.LoadControl("uc.ascx"); > ctrl_Content.ContentID = 1; > > Usercontrol: > private int idc; > public int ContentID > { > get { return idc; } > set { idc = value; } > } > > Leider gibt's diesen Fehler: > 'System.Web.UI.UserControl' enthält keine Definition für 'ContentID' > > > Vielen Dank für die Hilfe. > > Raphael > > _______________________________________________ > Asp.net Mailingliste, Postings senden an: > Asp.net@glengamoi.com > An-/Abmeldung und Suchfunktion unter: > http://www.glengamoi.com/mailman/listinfo/asp.net _______________________________________________ Asp.net Mailingliste, Postings senden an: Asp.net@glengamoi.com An-/Abmeldung und Suchfunktion unter: http://www.glengamoi.com/mailman/listinfo/asp.net _______________________________________________ Asp.net Mailingliste, Postings senden an: Asp.net@glengamoi.com An-/Abmeldung und Suchfunktion unter: http://www.glengamoi.com/mailman/listinfo/asp.net _______________________________________________ Asp.net Mailingliste, Postings senden an: Asp.net@glengamoi.com An-/Abmeldung und Suchfunktion unter: http://www.glengamoi.com/mailman/listinfo/asp.net