ASP.NET Обновление / отмена командного поля GridView не завершается

StackOverflow https://stackoverflow.com/questions/188327

Вопрос

Мой вопрос касается элемента управления ASP.NET GridView.Я использую командное поле в теге Columns, как показано ниже.

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

То, что отображается, показано на следующем изображении (после того, как я нажму на кнопку Редактирования).

alt text

Как вы можете видеть Я пытаюсь, чтобы ссылка на отмену отображала новую строку, и мой вопрос заключается в том, как вы что делаете? Если я изменю ButtonType="Link" Для ButtonType="Button", Я получаю его рендеринг правильно, как показано ниже.

альтернативный текст http://i38.tinypic.com/2pqopxi.jpg

Я уже пробовал использовать Google, и, возможно, я ищу не по тем тегам, но я не мог видеть этот адрес раньше.

Это было полезно?

Решение

Если вы используете поле шаблона, это даст вам полный контроль над внешним видом вашей страницы, но для этого требуется, чтобы вы использовали CommandName и возможные свойства CommandArgument, а также использовали OnRowCommand из GridView .

Страница 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>

Код, стоящий за:

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

}

Другие советы

Не используйте поле команды, используйте TemplateField и поместите в нее командную кнопку с разрывом строки (br) перед тем, как вы хотите.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top