Asp.net图像按钮没有onClick事件

时间:2015-09-08 11:36:49

标签: asp.net

此代码位于GridView

<asp:TemplateField HeaderText="Edit" ItemStyle-VerticalAlign="Middle" ItemStyle-HorizontalAlign="Center">
      <ItemTemplate>
        <asp:Image ID="imgEdit" ImageUrl="~/edit.png" runat="server"/> 
       </ItemTemplate>
</asp:TemplateField>

我的问题是,如果我尝试在onClick属性中创建<asp:Image事件,则该事件不可用。可能是什么问题?

2 个答案:

答案 0 :(得分:2)

您可以像这样使用ImageButton:

<%@ Page Language="C#" AutoEventWireup="True" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
        <title>ImageButton Sample</title>
    <script language="C#" runat="server">

          void ImageButton_Click(object sender, ImageClickEventArgs e) 
          {
             Label1.Text = "You clicked the ImageButton control at the coordinates: (" + 
                           e.X.ToString() + ", " + e.Y.ToString() + ")";
          }

       </script>

    </head>

    <body>

       <form id="form1" runat="server">

          <h3>ImageButton Sample</h3>

          Click anywhere on the image.<br /><br />

          <asp:ImageButton id="imagebutton1" runat="server"
               AlternateText="ImageButton 1"
               ImageAlign="left"
               ImageUrl="images/pict.jpg"
               OnClick="ImageButton_Click"/>

          <br /><br />

          <asp:label id="Label1" runat="server"/>

       </form>

    </body>
    </html>

如果是在客户端,您只需使用<a href="">..</a>

即可

更多信息:https://msdn.microsoft.com/fr-fr/library/system.web.ui.webcontrols.imagebutton.onclick(v=vs.110).aspx

答案 1 :(得分:1)

<asp:Image />仅用于显示图片,因此您无法使用OnClick事件。您正在寻找的控件是<asp:ImageButton />,可让您使用OnClick事件。

<asp:ImageButton runat="server" OnClick="MyClickFunction" />