Pergunta

Minha pergunta está no controle do ASP.NET GridView. Estou usando um campo de comando nas colunas, como visto abaixo.

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

O que renderiza é o mostrado na imagem a seguir (depois de clicar no botão Editar).

alt text

Como você pode ver Estou tentando fazer com que o link de cancelamento apareça uma nova linha e minha pergunta é como você faz o quê? Se eu mudar o ButtonType="Link" para ButtonType="Button", Eu entendo a renderização corretamente, como mostrado abaixo.

ALT TEXTO http://i38.tinypic.com/2pqopxi.jpg

Já tentei o Google e talvez não esteja pesquisando nas tags certas, mas não conseguia ver essa abordada antes.

Foi útil?

Solução

Se você usar um campo de modelo, ele fornecerá controle completo sobre a aparência da sua página, mas exige que você use o comandoname e as possíveis propriedades do CommandGument e também usando o OnRowCommand do GridView.

A página 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>

O código atrás:

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

}

Outras dicas

Não use um campo de comando, use um Modelfield E coloque seu botão de comando nisso com uma quebra de linha (BR) antes que desejasse.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top