plusieurs Boutons dans 1 gridview c# [Résolu]

cs_Sabine25 84 Messages postés jeudi 1 mars 2007Date d'inscription 22 juin 2007 Dernière intervention - 23 mai 2007 à 17:09 - Dernière réponse : jesusonline 6827 Messages postés dimanche 15 décembre 2002Date d'inscription 13 octobre 2010 Dernière intervention
- 24 mai 2007 à 20:58
Bonjour,
voilà j ai créé un gridview en ASP et j y ai mis 2 buttonfield: Un pour supprimer, un pour mettre à jour!
J utilise pas la DeleteCommand, parcequ il faut que je supprime dans plusieurs tables en meme temps!
Maintenant j aimerai savoir sur l evenement RowCommand , comment différencier les 2 boutons!
voilà une idée mais je la trouve pas logique...lol

--------------- code asp (ça c est correct))-------------------------------------------
<

asp:GridView
ID= "GridView2"
runat="server"
AutoGenerateColumns="False"
CellPadding="4"
DataKeyNames="ID_GROUP"
DataSourceID="SourceGroup2"
ForeColor="#333333"
GridLines="None"
Width="311px">
<FooterStyle
BackColor="#507CD1"
Font-Bold="True"
ForeColor="White"
/>

<Columns>
<asp:BoundField
DataField="ID_GROUP"
HeaderText="ID_GROUP"
ReadOnly="True"
SortExpression="ID_GROUP"
/>
<asp:BoundField
DataField="TITLE_GROUP"
HeaderText="TITLE_GROUP"
SortExpression="TITLE_GROUP"
/>
<asp:BoundField
DataField="DESC_GROUP"
HeaderText="DESC_GROUP"
SortExpression="DESC_GROUP"
/>
<asp:ButtonField
ButtonType="Button"
Text="Delete"
HeaderText="Select"/>

<asp:ButtonField
ButtonType="Button"
Text="Update"
HeaderText="Select"/>

</Columns>

<RowStyle
BackColor="#EFF3FB"
/>
<EditRowStyle
BackColor="#2461BF"
/>
<SelectedRowStyle
BackColor="#D1DDF1"
Font-Bold="True"
ForeColor="#333333"
/>
<PagerStyle
BackColor="#2461BF"
ForeColor="White"
HorizontalAlign="Center"
/>
<HeaderStyle
BackColor="#507CD1"
Font-Bold="True"
ForeColor="White"
/>
<AlternatingRowStyle
BackColor="White"
/>

</asp:GridView>

<asp:SqlDataSource
ID="SourceGroup2"
runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString3 %>
"
ProviderName="<%$ ConnectionStrings:ConnectionString3.ProviderName %>
"
SelectCommand='SELECT "ID_GROUP", "TITLE_GROUP", "DESC_GROUP" FROM "GROUP_QUEST"'>
</asp:SqlDataSource>
------------------------------------------------------------------------------------------

--------------- code c# , c est celui là qui va pas -------------------------------------------------------
C'est dans la partie en gras que je sais pas trop ! je voudrais appeler le bouton Delete et pas le Update
protected

void GridView2_RowCommand(object sender, GridViewCommandEventArgs e)
{
            
ButtonField Button_grid =
new
ButtonField
();
            
// to convert the argument for the event in a String 
            int index =
Convert.ToInt32(e.CommandArgument);
            
GridViewRow row = GridView2.Rows[index];
            
// All the values of each column of the row selected are put in a variable
            TableCell paramId= row.Cells[0];
            
TableCell paramTitle = row.Cells[1];
            
TableCell paramDesc = row.Cells[2];

            if (Button_grid.Text ==
"Delete"
)
            {
                  
// connection to MPL database
                  DataConnection m =
new
DataConnection();
                  
OracleConnection conn =
null;
                  conn = m.DoConnection();
                  
try
                  {
                        
// create command
                        // command for DELETE FROM group_quest

                        OracleCommand cmd = conn.CreateCommand();
                        
// commande for COMMIT
                        OracleCommand cmd2 = conn.CreateCommand();
                        
// command for DELETE FROM question                        OracleCommand cmd3 conn.CreateCommand();                        cmd.CommandText

"DELETE FROM group_quest where title_group=:parm1, desc_group=:parm2";
                        
// use to save data in the database
                        cmd2.CommandText =
"COMMIT";
                        cmd3.CommandText =
"DELETE FROM question where id_group=:parm3";

                        OracleParameter myParameter1 =
new
OracleParameter(
":parm1",
OracleType.VarChar, 300);
                        myParameter1.Value = paramTitle.Text;   
                        
OracleParameter myParameter2 =
new
OracleParameter(
":parm2",
OracleType.VarChar, 300);
                        myParameter2.Value = paramDesc.Text;
                        
OracleParameter myParameter3 =
new
OracleParameter(
":parm3",
OracleType.Number);
                        myParameter3.Value = paramId.Text;

                        // add parameters to the query
                        cmd.Parameters.Add(myParameter1);
                        cmd.Parameters.Add(myParameter2);
                        cmd3.Parameters.Add(myParameter3);

                        // execute the query
                        cmd.ExecuteNonQuery();
                        cmd3.ExecuteNonQuery();
                        cmd2.ExecuteNonQuery();

                        cmd.Dispose();
                        cmd =

null;
                        cmd3.Dispose();
                        cmd3 =
null;
                        cmd2.Dispose();
                        cmd2 =
null;
}

...... catch.... finally}}

MERCI
Sabine
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
jesusonline 6827 Messages postés dimanche 15 décembre 2002Date d'inscription 13 octobre 2010 Dernière intervention - 24 mai 2007 à 00:29
3
Merci
Bonsoir,

pourquoi ne pas utiliser le commandName ?

Cyril - MSP - MCTS ASP.net & SQL

Merci jesusonline 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 124 internautes ce mois-ci

Commenter la réponse de jesusonline
cs_Sabine25 84 Messages postés jeudi 1 mars 2007Date d'inscription 22 juin 2007 Dernière intervention - 24 mai 2007 à 20:34
0
Merci
Merciiiii
Sab

Mais une petite question:
j ai mon deuxieme bouton "Update" et je veux quand je clique dessus qu il me passe toutes les cellules en champ de saisie, de maniere à les modifier directement dans le gridview!
je sais que je pourrais utiliser la methode UpdateCommand mais j aimerai avoir 2 boutons pareils! compte tenu que j ai le premier bouton "Delete" a qui j ai donné mes propres actions!

merci d avance

Sab
Commenter la réponse de cs_Sabine25
jesusonline 6827 Messages postés dimanche 15 décembre 2002Date d'inscription 13 octobre 2010 Dernière intervention - 24 mai 2007 à 20:58
0
Merci
pas compris là mais si tu met le commandName ) Update alors il passera par le UpdateCommand (je suis pas sur mais presque)

<hr />Cyril - MSP - MCTS ASP.net & SQL
Commenter la réponse de jesusonline

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.