开发者

ASP:Imagebutton fail to post back in gridview

开发者 https://www.devze.com 2023-03-28 23:40 出处:网络
<asp:GridView ID=\"gv1\" runat=\"server\" Width=\"100%\" DataSourceID=\"ods1\" AutoGenerateColumns=\"false\"
    <asp:GridView ID="gv1" runat="server" Width="100%" DataSourceID="ods1" AutoGenerateColumns="false"
    DataKeyNames="FileID" HeaderStyle-Height="20px">
    <Columns>
        <asp:TemplateField ItemStyle-Width="25px" ItemStyle-HorizontalAlign="Center">
            <ItemTemplate>
                 <asp:ImageButton ID="imgMimeType" runat="server" CommandName="download" />
            </ItemTemplate>

...

I have defined my image button as above, but for some reason row command fails to fire off when I click the button.

Strangely, linkbutton in another column works just fine.

How do I make it so that image button will fire off post back?

Row bind

Image Button imb = e.Row.FindControl("imgMimeType") as ImageButton;
    if (imb != null)
    {
       imb.CommandArgument = file.FileID.ToString();
       imb.A开发者_如何学运维lternateText = imb.ToolTip = file.MimeType;
       if (file.MimeType.Contains("zip"))
       {

               imb.ImageUrl = "~/Images/mimetypes/zip-icon.png";
           }
    ...

Row command code

public void gv1_RowCommand(object sender, GridViewCommandEventArgs e)
   {
      switch (e.CommandName.ToLower())
      {
          case "download":
...


Try changing the imagebutton to a linkbutton temporarily just to see if it works. It's been a little since I've worked with asp.net but I remember running into an issue where events were not working on ImageButtons missing their images on certain browsers only. Does your ImageButton have an image set?


Add CausesValidation="False" to the imagebutton. That worked for me.

0

精彩评论

暂无评论...
验证码 换一张
取 消