Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Accessing user control
Message
De
10/03/2011 05:00:26
 
 
À
10/03/2011 04:34:10
Information générale
Forum:
ASP.NET
Catégorie:
Autre
Divers
Thread ID:
01502613
Message ID:
01503152
Vues:
32
>>>>Hi
>>>>
>>>>I've got some combo boxes in a user control and I want to access the contents in the code behind the page on which I have placed that control
>>>>
>>>>I get this message
>>>>
>>>>Error 1 'validation.ExportDateRangeSelectorfalse.Protected WithEvents radModels As Telerik.Web.UI.RadComboBox' is not accessible in this context because it is 'Protected'. D:\development\PsdGraphs\exportdata.aspx.vb 42 49
>>>>
>>>>how can I get access to the contents of the control
>>>
>>>You can probably sneak up on it using reflection. Something like:
var theProperty = (from p in  ObjectContainingradModels.GetType().GetProperties(BindingFlags.NonPublic|BindingFlags.Instance)
>>>                                   .Where(x=>x.Name=="radModels") select p).FirstOrDefault();
>>>       var theComboBox =  theProperty.GetValue(ObjectContainingradModels,null);
(C# I'm afraid)
>>>UPDATE: Dunno why I was thinking Linq was useful. Simpler:
var theProperty = ObjectContainingradModels.GetType()
>>>.GetProperty("radModels", BindingFlags.NonPublic | BindingFlags.Instance);
>>
>>I must be missing something here.
>>
>>If user control are useful why are they so hard to access from within the page.
>
>Not anything to do with UserControls per se. It's just that the property you are trying to access has been marked as 'protected' by the class designers so is not intended to be visible except to derived classes. You're using reflection to do something that they had not wanted you to do.....

Right. Thanks Viv
A lot to learn still is.
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform