[ASP .NET C#] Contrôle utilisateur dans un autre contrôle utilisateur

linar009 Messages postés 4 Date d'inscription vendredi 3 juin 2005 Statut Membre Dernière intervention 23 juin 2005 - 23 juin 2005 à 10:18
linar009 Messages postés 4 Date d'inscription vendredi 3 juin 2005 Statut Membre Dernière intervention 23 juin 2005 - 23 juin 2005 à 15:12
Bonjour,

J'ai un gros souci.
J'ai créé un contrôle utilisateur dans lequel j'ai un autre contrôle.
Le premier passe un string en paramètre au deuxième.
Le problème est qu'il est impossible d'afficher ce contrôle.
Il me renvoie l'erreur : "Un composant externe a levé une exception".
Ca fait des heures que je cherche l'erreur et impossible de trouver.

Merci par avance.

Look.

4 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
23 juin 2005 à 10:51
Tu peux m'en dire un peu plus ?

un composant externe ? quelle composant ? tu fais comment pour passer tes params entre tes pages ?


<HR>
Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr
0
linar009 Messages postés 4 Date d'inscription vendredi 3 juin 2005 Statut Membre Dernière intervention 23 juin 2005
23 juin 2005 à 14:24
Oui je peux t'en dire un peu plus...

En fait, j'ai un module aspx dans lequel je place de nombreux modules ascx.
Ca ça fonctionne parfaitement.
Ensuite, lorsque je veux insérer un Contrôle utilisateur dans un autre contrôle utilisateur, ça ne fonctionne plus.
En gros :
Je dois réaliser un module de gestion de droits pour les applications de différents utilisateurs.
Donc j'ai créé un ascx qui permet de rechercher un utilisateur d'après son nom (en fait il suffit de taper les premières lettres du nom (dans un inputtext) et on obtient une liste des utilisateurs dont le nom commence par ces lettres (dans un datagrid))
La 1ere colonne du datagrid est hyperlink.
Moi ce que je voudrais faire c'est lorsqu'on clique surle lien (hyperlink) d'un utilisateur on affiche une fiche de l'utilisateur voulu juste en dessous du datagrid.
Donc j'avais pensé à un userControl dans lequel je passerais le nom de l'utilisateur en parametre et qui s'afficherait en dessous du datagrid.
J'ai testé les deux usercontrols indépendamment ils fonctionnent très bien.
Mais des que je mets le second dans le premier ca plante!
Le passage de parametre je l'effectue de la sorte :
dans le usercontrol principal une clé du type :
private
string cle=" ";

dans le second usercontrol :

public
string symbol=" ";

et je charge la valeur à partir du premier comme ceci :

private
void dataGrid_ItemCommand(
object sender, DataGridCommandEventArgs e)


{



switch(((LinkButton)e.CommandSource).CommandName)


{



case "Choix":


Label1.Text = e.Item.Cells[0].Text;



string service = e.Item.Cells[0].Text;


cle = service;


((AgentDetail)
this.FindControl("Detail1")).symbol = cle;



//Detail1.InitializeComponent();


panDetail.Visible =
true;



break;



//Detail1.Visible=true;



default:



// Ne rien faire



break;


}

sachant que Detail1 est justement le usercontrol inséré.

Désolé d'avoir été si long
J'espere avoir donné le maximum d'infos nécessaires
Merci d'avance

Cordialement
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
23 juin 2005 à 14:34
dans AgentDetail il faut que tu ais une propriété public

Private _id As String


Public Property id() As String
Get
Return _id
End Get
Set(ByVal value As String)
_id = value
End Set
End Property

puis aprés dans ton truc
((AgentDetail)this.FindControl("Detail1")).symbol = e.Item.Cells[0].Text;



<HR>



Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr
0
linar009 Messages postés 4 Date d'inscription vendredi 3 juin 2005 Statut Membre Dernière intervention 23 juin 2005
23 juin 2005 à 15:12
J'ai fait comme tu as dit mais ça ne fonctionne pas...
J'ai une erreur : Erreur d'analyse: Un composant externe a levé une exception.
Le pire c'est que je ne parviens même pas à afficher mon contrôle.
Pourrais-je t'envoyer mes deux fichiers jesusonline?
Merci
0
Rejoignez-nous