Question

Ma question concerne le contrôle ASP.NET GridView. J'utilise un champ de commande dans la balise Columns, comme indiqué ci-dessous.

<asp:CommandField ShowEditButton="True" HeaderStyle-Width="40px" UpdateText="Save" ButtonType="Link" HeaderStyle-Wrap="true" ItemStyle-Wrap="true" ItemStyle-Width="40px"/>

Ce qui est rendu est celui indiqué dans l'image suivante (après avoir cliqué sur le bouton Modifier).

 alt text

Comme vous pouvez le constater , le lien Annuler s'affiche avec une nouvelle ligne. Ma question est de savoir comment faire quoi. si je modifie le ButtonType = " Lien " à ButtonType = "Bouton" , le rendu est correct, comme indiqué ci-dessous.

texte de remplacement http://i38.tinypic.com/2pqopxi.jpg

J'ai déjà essayé Google et je ne cherche peut-être pas les bons tags, mais je ne pouvais pas voir celui-ci adressé auparavant.

Était-ce utile?

La solution

Si vous utilisez un champ de modèle, vous obtiendrez un contrôle complet sur l'apparence de votre page, mais vous devrez utiliser les propriétés CommandName et les éventuelles propriétés CommandArgument, ainsi que l'utilisation de la commande OnRow de GridView.

La page aspx:

<asp:GridView id="gvGrid" runat="server" OnRowCommand="gvGrid_Command">
 <Columns>
  <asp:TemplateField>
   <ItemTemplate>
    Some Stuff random content
    <br />
    <asp:LinkButton id="lbDoIt" runat="server" CommandName="Cancel"  CommandArgument="SomeIdentifierIfNecessary" />
   </ItemTemplate>
  </asp:TemplateField>
 </Columns>
</asp:GridView>

Le code derrière:

protected void gvGrid_Command(object sender, GridViewCommandEventArgs e)
{
 if(e.CommandName=="Cancel")
 {
   // Do your cancel stuff here.
 }

}

Autres conseils

N'utilisez pas de champ de commande, utilisez un TemplateField et placez votre bouton de commande avec un saut de ligne avant celui-ci, comme vous le souhaitez.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top