Bonjour à tous,

habitué des winforms et de wpf je dois mettre en place un site intranet

je dois mettre en place un menu qui se charge dynamiquement et ajouter un rollover sur les items de mon menu

J'ai donc placer 2 composants image dans un UserControl MenuItem

ASP.net (MenuItem.ascx):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
<asp:Panel ID="Panel1" runat="server" Width="96px" onload="Panel1_Load">
    <asp:Image ID="img_normal" runat="server" Height="89px" Width="96px" />
    <asp:Image ID="img_over" runat="server" Height="89px" Width="96px" 
        Visible="False" />
</asp:Panel>
dans mon UserControl Menu je charge dynamiquement les UserControl MenuItem

C# (Menu.ascx.cs) :
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
16
            panelItem.Controls.Clear();
            // - Requete LINQ -
            var _db = new DataClasses1DataContext(Resource.StrConnection);
            var _query =
                    from r in _db.rubriques
                    where r.parent_id.Value.Equals(1)
                    select r;
            var _result = _query.ToList();
 
            // - Construction du Menu -
            for (int i = 0; i < _result.Count; i++)
            {
                var _mi = LoadControl("MenuItem.ascx") as MenuItem;
                _mi.Rubrique = _result[i];
                panelItem.Controls.Add(_mi);
            }
et donc mon code C# de MenuItem j'associe l'image au composant Image

C# (MenuItem.ascx.cs) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
            m_imageNormale = "bt_" + m_rubrique.id.ToString() + "_off";
            m_imageOver = "bt_" + m_rubrique.id.ToString() + "_on";
 
            if (img_normal == null) img_normal = new Image() { Width = 96, Height = 89 };
            img_normal.ImageUrl = "~/Images/" + m_imageNormale + ".png";
            if (img_over == null) img_over = new Image() { Width = 96, Height = 89 };
            img_over.ImageUrl = "~/Images/" + m_imageOver + ".png";
 
 
            img_normal.Attributes.Add("onmouseover", "msover('"+ img_normal.ClientID + "', '" + img_over.ImageUrl + "');");
            img_over.Attributes.Add("onmouseout", "msout('"+img_over.ClientID + "', '" + img_normal.ImageUrl + "');");
seulement ce que je ne comprend pas c'est dans le code HTML généré tout mes MenuItem on le même ID alors comment les différencier lors d'un appel en Javascript ??

merci d'avance pour votre aide !