Bonjour,
je suis confronté à ce problème depuis un petit bout de temps et je sèche!!!
Voila: j'ai 2 WebUser Control permettant de gérer une liste de contacts.
le premier, "WUCGestionContacts" contient une girdview avec tous les contacts. Un template sous forme d'un imageButton doit permettre d'afficher l'autre webUser Control "WUCDetailsView" contenant un detailsView du contact. J'ai créé un event pour récupérer le clic sur l'ImageButton "btnViewDetails".
J'ai également donné une propriété à mes WUC afin qu'ils se transmettent l'identifiant du contact sélectionné:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public String m_WUCGestionContactModifID
    {
        get
        {
            if (ViewState["CONTACT"] != null)
            {
                return Convert.ToString(ViewState["CONTACT"]);
            }
            else return "";
        }
        set
        {
            ViewState["CONTACT"] = value;
        }
    }
Comme je ne peux pas mettre "enable selection=true" dans le gridviewContact, je récupère la ligne sélectionnée puis l'identifiant du contact sur le rowCommand:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
protected void GridViewContacts_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        GridViewRow selectedRow = (GridViewRow)(((Control)e.CommandSource).NamingContainer);
        int i = selectedRow.RowIndex;
        string Id = GridViewContacts.DataKeys[i].Values[0].ToString();
        m_WUCGestionContactModifID = Id;
    }

Voila comment je voudrais que ca marche:

Page Principale:
J'affiche ma gridview de contacts, je clic sur l'imageButton,

WUC GestionContact:
je récupère l'identifiant du contact, je le met dans la propriété m_WUCGestionContactModifID,je lève l'event "btnViewDetails_Click1",

Page Principale:
la méthode btnViewDetails_Click1 est appelée, passe l'identifiant au WUC DetailsView, affiche le WUCDetailsView.

WUCDetailsView:
une DetailsView s'affiche contenant les détails du contact (plus des boutons permettant la modification, suppression, etc du contact)

Et voila comment ca se passe en vrai:
Page Principale:
J'affiche ma gridview de contacts, je clic sur l'imageButton,

WUC GestionContact:
je lève l'event "btnViewDetails_Click1",

Page Principale:
la méthode btnViewDetails_Click1 est appelée sans avoir encore l'identifiant
, affiche le WUCDetailsView

WUC GestionContact:
l'event "GridViewContacts_RowCommand" est levé, récupère l'identifiant et le met dans la propriété.

Mon problème est donc de trouver un moyen pour récupérer la ligne sur laquelle on a clické/sélectionnée avant le lancement de la méthode "btnViewDetails_Click1" et sans la sélection automatique...
Je n'y arrive pas..

J'ai essayé de respecter les règles, j'espère que c'est le cas et que ça reste compréhensible...
Merci de votre aide, je suis vraiment bloqué...