10
votes

ASP.NET + GridView + Commandfield en tant que templatefield

J'ai une grille grille. My GridView a une colonne contenant une colonne "Options". Cette colonne comprend les options de commande de commande traditionnelles (modifier, supprimer, etc.). J'ai la configuration du code pour fonctionner lorsqu'un Commandfield est utilisé. Cependant, je dois faire une mise en forme personnalisée pour que je puisse convertir le champ de commande en un modèle.

Ma question est de savoir comment puis-je déclencher l'ONROWCOMMAND, ONROWEDIDITION, ONROWDOLETING et ONROWUPDATATION des événements des différents éléments de Linkbutton de mon modèle?

Merci!


0 commentaires

3 Réponses :


23
votes

Tout ce que vous avez à faire est de définir la propriété CommandName de la colonne Linkbutton à l'intérieur de votre colonne Modèle sur "Modifier" pour l'édition, "Supprimer" pour la suppression et la "mise à jour" pour la mise à jour. Cela déclenchera respectivement les événements GridView Rowedting, Rowdelet et Rowupding. Pour déclencher l'événement RowCommand, vous devez définir la propriété OnRowCommand de votre contrôle GridView.

<asp:GridView ID="GridView1" runat="server" OnRowCommand="GridView1_RowCommand"
    OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing"
    OnRowUpdating="GridView1_RowUpdating">
<Columns>
    <asp:TemplateField>
        <ItemTemplate>
            <!--To fire the OnRowEditing event.-->
            <asp:LinkButton ID="lbEdit" runat="server" CommandName="Edit" 
                Text="Edit">
            </asp:LinkButton>
            <!--To fire the OnRowDeleting event.-->
            <asp:LinkButton ID="lbDelete" runat="server" CommandName="Delete" 
                Text="Delete">
            </asp:LinkButton>
            <!--To fire the OnRowUpdating event.-->
            <asp:LinkButton ID="lbUpdate" runat="server" CommandName="Update" 
                Text="Update">
            </asp:LinkButton>
        </ItemTemplate>
    </asp:TemplateField>
</Columns>    
</asp:GridView>


0 commentaires

13
votes

J'ai eu le même problème.

Pour édition, j'ai procédé à ce qui suit: xxx

Ceci permet de montrer / cacher les boutons de mise à jour et d'annulation. < / p>

Quant à Supprimer, j'ai utilisé ce qui suit: xxx


0 commentaires

1
votes

Cliquez sur les colonnes dans Propriétés, Ajouter Commandfield (Modifier, Mettre à jour, Annuler) et cliquez sur "Convertir ce champ en templatefield"

Swich à la source et va automatiquement ajouter un code.


0 commentaires