开发者

ASP:Imagebutton fail to post back in gridview

    <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

上一篇:

下一篇:

精彩评论

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

最新问答

问答排行榜