GridView : DropDownList en mode Edit

Résolu
tonlight Messages postés 4 Date d'inscription dimanche 2 avril 2006 Statut Membre Dernière intervention 25 septembre 2007 - 6 sept. 2007 à 11:23
tonlight Messages postés 4 Date d'inscription dimanche 2 avril 2006 Statut Membre Dernière intervention 25 septembre 2007 - 11 sept. 2007 à 09:54
Bonjour à tous,

je développe un intranet en ASP.NET 2.0 VB

je possède un gridview avec une SQLDataSource

Lorsque je passe en mode Edit, je voudrais mettre en place des DDL. En effet ma requête SELECT du DataSource est constituée de deux jointures et pour respecter mes contraintes d'intégrité je veux forcer l'utilisateur à choisir les valeurs dans des DDL.

J'arrive bien à initialiser mes DDL avec les valeurs en BD mais mon Update ne marche pas.

Voici ma requête SQL :

SELECT tbl_Employe.Idf_Employe as Idf_Employe, tbl_Employe.Nom,tbl_Employe.Prenom,

   tbl_Employe.Tel_Fixe,tbl_Employe.Tel_Poste,tbl_Employe.Tel_Portable,tbl_Employe.Email,
   tbl_Site.Site, tbl_Site.Idf_Site,tbl_Entite.Idf_Entite,tbl_Entite.Libelle 

 FROM tbl_Employe 
   LEFT JOIN tbl_Entite ON tbl_Employe.Entite = tbl_Entite.Idf_Entite
    LEFT JOIN tbl_Site ON tbl_Employe.Site = tbl_Site.Idf_Site
 WHERE(tbl_Employe.Actif = 1)

Voici ma page ASPX :  

<

asp:GridView
ID="gv_employe"
runat="server"
AllowPaging="True"
AllowSorting="True"

AutoGenerateColumns="False"
CellPadding="3"
DataSourceID="datas_recherche"

Font-Bold="False"
Font-Size="X-Small"
ForeColor="#333333"
GridLines="Horizontal"

HorizontalAlign="Center"
PageSize="12"
style="display:block;overflow:auto;border:0"
ShowFooter="True"

DataKeyNames="Idf_Employe">

<FooterStyle
BackColor="#5D7B9D"
Font-Bold="True"
ForeColor="White"
Font-Names="Verdana"
/>

<Columns>

<asp:CommandField
ButtonType="Image"
CancelImageUrl="~/App_Images/Boutons/btn_icoAnnuler.gif"

DeleteImageUrl="~/App_Images/Boutons/btn_icoSupprimer.gif"
EditImageUrl="~/App_Images/Boutons/Btn_icoModifier.gif"

InsertImageUrl="~/App_Images/Boutons/btn_icoAjouter.gif"
ShowEditButton="True"
UpdateImageUrl="~/App_Images/Boutons/btn_icoValider.gif"
/>

<asp:CommandField
ButtonType="Image"
DeleteImageUrl="~/App_Images/Boutons/btn_icoSupprimer.gif"

ShowDeleteButton="True"
/>

<asp:BoundField
DataField="Idf_Employe"
HeaderText="Num&#233;ro Employe"
ReadOnly="True"
SortExpression="Idf_Employe"
>

<ItemStyle
HorizontalAlign="Left"
Wrap="False"
/>

</asp:BoundField>

<asp:BoundField
DataField="Nom"
HeaderText="Nom"
SortExpression="Nom"
>

<ItemStyle
HorizontalAlign="Left"
Wrap="False"
/>

</asp:BoundField>

<asp:BoundField
DataField="Prenom"
HeaderText="Prenom"
SortExpression="Prenom"
>

<ItemStyle
HorizontalAlign="Left"
Wrap="False"
/>

</asp:BoundField>

<asp:TemplateField
HeaderText="Site"
SortExpression="Site"
>

<ItemTemplate>

<asp:Label
ID="lb_site"
runat="server"
Text='<%#Eval("Site")%>
'
style="text-align: left">

</asp:Label>

</ItemTemplate>

<EditItemTemplate>

<asp:SQLDataSource
ID="datas_sites"
runat="server"
ConnectionString="<%$ ConnectionStrings:db_BDD_Editique_ConnectionString %>
"
SelectCommand="SELECT [Idf_Site], [Site] FROM [tbl_Site] ORDER BY [Site]"
>

</asp:SQLDataSource>

<asp:DropDownList
DataSourceID="datas_sites"
ID="ddl_modif_site"
runat="server"

DataTextField="Site"
DataValueField="Idf_Site"

SelectedValue='<%#Bind("Idf_Site")%>
'>

</asp:DropDownList>

</EditItemTemplate>

<ItemStyle
Wrap="False"
HorizontalAlign="Left"/>

</asp:TemplateField>

<asp:TemplateField
HeaderText="Entite"
SortExpression="Libelle">

<ItemTemplate>

<asp:Label
ID="lb_entite"
runat="server"
Text='<%#Eval("Libelle")%>
'>

</asp:Label>

</ItemTemplate>

<EditItemTemplate>

<asp:SQLDataSource
ID="datas_entites"
runat="server"
ConnectionString="<%$ ConnectionStrings:db_BDD_Editique_ConnectionString %>
"
SelectCommand="SELECT [Idf_Entite], [Libelle] FROM [tbl_Entite] ORDER BY [Libelle]"
>

</asp:SQLDataSource>

<asp:DropDownList
DataSourceID="datas_entites"
ID="ddl_modif_entite"
runat="server"

DataTextField="Libelle"
DataValueField="Idf_Entite"

SelectedValue='<%#Bind("Idf_Entite")%>
'>

</asp:DropDownList>

</EditItemTemplate>

<ItemStyle
Wrap="False"
HorizontalAlign="Left"/>

</asp:TemplateField>

<asp:BoundField
DataField="Tel_Fixe"
HeaderText="Tel_Fixe"
SortExpression="Tel_Fixe"
>

<ItemStyle
HorizontalAlign="Left"
Wrap="False"
/>

</asp:BoundField>

<asp:BoundField
DataField="Tel_Poste"
HeaderText="Tel_Poste"
SortExpression="Tel_Poste"
>

<ItemStyle
HorizontalAlign="Left"
Wrap="False"
/>

</asp:BoundField>

<asp:BoundField
DataField="Tel_Portable"
HeaderText="Tel_Portable"
SortExpression="Tel_Portable"
>

<ItemStyle
HorizontalAlign="Left"
Wrap="False"
/>

</asp:BoundField>

<asp:BoundField
DataField="Email"
HeaderText="Email"
SortExpression="Email"
>

<ItemStyle
HorizontalAlign="Left"
Wrap="False"
/>

</asp:BoundField>

</Columns>

<RowStyle
BackColor="#F7F6F3"
ForeColor="RoyalBlue"
Font-Names="Verdana"
height="30px"
Wrap="False"/>

<EditRowStyle
BackColor="White"
Font-Names="Verdana"
/>

<SelectedRowStyle
BackColor="White"
Font-Bold="True"
ForeColor="#333333"
Font-Names="Verdana"
/>

<PagerStyle
BackColor="#284775"
ForeColor="White"
HorizontalAlign="Center"
Font-Names="Verdana"
/>

<HeaderStyle
BackColor="#5D7B9D"
Font-Bold="True"
ForeColor="White"
Font-Names="Verdana"
HorizontalAlign="Left"
Width="100%"/>

<AlternatingRowStyle
BackColor="White"
ForeColor="#284775"
Font-Names="Verdana"
/>

<EmptyDataRowStyle
Font-Names="Verdana"
/>

</asp:GridView>

<asp:SqlDataSource
ID="datas_recherche"
runat="server"
ConnectionString="<%$ ConnectionStrings:db_BDD_Editique_ConnectionString %>
"

UpdateCommand="UPDATE tbl_EmployeSET Nom=@Nom, Prenom=@Prenom,Tel_Fixe=@Tel_Fixe,

Tel_Poste=@Tel_poste,Tel_Portable=@Tel_Portable,Email=@Email

,Site=@site,Entite=@entite

WHERE Idf_Employe=@Idf_Employe">

<UpdateParameters
>

<asp:Parameter
Name="Site"
Type="String"
/>

<asp:Parameter
Name="Entite"
Type="String"/>

</UpdateParameters>

</asp:SqlDataSource>

Merci à tous pour votre aide

2 réponses

tonlight Messages postés 4 Date d'inscription dimanche 2 avril 2006 Statut Membre Dernière intervention 25 septembre 2007
11 sept. 2007 à 09:54
Bonjour en fait j'ai laissé tomber cette idée là. J'ai trouvé un superbe ensemble de tuto pour créer un site ASP.NET dans les meilleurs conditions.

Jetez-y un coup d'oeil ça vaut le coup :
http://www.asp.net/learn/data-access/tutorial-01-vb.aspx

Bonne chance à tous
3
gldfdp Messages postés 90 Date d'inscription lundi 30 juin 2003 Statut Membre Dernière intervention 21 février 2008
11 sept. 2007 à 09:51
Qu'entends-tu exactement par çà ne marche pas? As-tu essayé d'utiliser SQL Profiler pour voir la requête que t'envoyait ta page?
0
Rejoignez-nous