Bonsoir à toutes et à tous,
J'ai un exercice à faire pour les cours. Bon je sais je commence mal car ça n'est pas à vous de vous le farcir. Mais car il y a un mais, mon exercice fonctionne bien.
Cependant j'ai juste une problème sur le positionnement du DropDownList.
Voici mon code :
Site.master
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
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 <%@ Master Language="C#" AutoEventWireup="true" CodeFile="Site.master.cs" Inherits="SiteMaster" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> <link href="~/Styles/Site.css" rel="stylesheet" type="text/css" /> <asp:ContentPlaceHolder ID="HeadContent" runat="server"> </asp:ContentPlaceHolder> </head> <body> <form id="form1" runat="server"> <div class="page"> <div class="header"> <div class="title"> <h1> Mon application ASP.NET </h1> </div> <div class="loginDisplay"> <asp:LoginView ID="HeadLoginView" runat="server" EnableViewState="false"> <AnonymousTemplate> [ <a href="~/Account/Login.aspx" ID="HeadLoginStatus" runat="server">Se connecter</a> ] </AnonymousTemplate> <LoggedInTemplate> Bienvenue <span class="bold"><asp:LoginName ID="HeadLoginName" runat="server" /></span>! [ <asp:LoginStatus ID="HeadLoginStatus" runat="server" LogoutAction="Redirect" LogoutText="Se déconnecter" LogoutPageUrl="~/"/> ] </LoggedInTemplate> </asp:LoginView> </div> <div class="clear hideSkiplink"> <asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false" IncludeStyleBlock="false" Orientation="Horizontal"> <Items> <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Accueil"/> <asp:MenuItem NavigateUrl="~/Default2.aspx" Text="DropDownList" /> <asp:MenuItem NavigateUrl="~/About.aspx" Text="À propos de"/> </Items> </asp:Menu> </div> </div> <div class="main"> <asp:ContentPlaceHolder ID="MainContent" runat="server"/> </div> <div class="clear"> </div> </div> <div class="footer"> </div> </form> </body> </html>
Page avec le DropDownList
et son code 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
17
18 <%@ Page Title="DropdownList" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %> <asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> </asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" onselectedindexchanged="DropDownChange"> <asp:ListItem Text="Choisissez..." Value="0" /> <asp:ListItem Text="A --> I" Value="1" /> <asp:ListItem Text="J --> Q" Value="2" /> <asp:ListItem Text="R --> Z" Value="3" /> </asp:DropDownList> <br /> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> <br /> </asp:Content>
Mon problème est que j'ai un cadre en milieu de page contenant ma première DropDownList et mon Label. Lorsque que change la valeur de ma première DropDownList alors j'affiche la deuxième. Mais la deuxième s'affiche tout en bas à gauche de la page. Je sais pourquoi. Mais ma question est comment est ce que je peux venir mettre cette Deuxième DropDownList à côté de l'autre ?
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
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Drawing; public partial class Default2 : System.Web.UI.Page { protected override void OnLoad(EventArgs e) { DropDownList listLettre = new DropDownList(); listLettre.ID = "ListLettres"; listLettre.AutoPostBack = true; listLettre.SelectedIndexChanged += listeLettres_SelectedIndexChanged; listLettre.Visible = false; Master.FindControl("form1").Controls.Add(listLettre); base.OnLoad(e); } protected void Page_Load(object sender, EventArgs e){} protected void DropDownChange(object sender, EventArgs e) { int valSelected; if (int.TryParse(((DropDownList)sender).SelectedValue, out valSelected)) { string chaine = string.Empty; DropDownList listLettre = (DropDownList)Master.FindControl("form1").FindControl("ListLettres"); switch (valSelected) { case 1: chaine = "ABCDEFGHI"; break; case 2: chaine = "JKLMNOPQ"; break; case 3: chaine = "RSTUVWXYZ"; break; } foreach (Char c in chaine) { listLettre.Items.Add(new ListItem(c.ToString(), c.ToString())); } listLettre.Visible = true; } } protected void listeLettres_SelectedIndexChanged(Object sender, EventArgs e) { Label1.Text = string.Format("Vous avez choisi {0}", ((DropDownList)sender).SelectedValue); } }
Si vous avez besoin de plus d'informations faite le moi savoir.
Si une âme charitable passe par la je suis tout ouï.
Bien amicalement Boobs
Partager