Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如果ImageButton没有图像,则不会激发ImageButton事件?_C#_Asp.net - Fatal编程技术网

C# 如果ImageButton没有图像,则不会激发ImageButton事件?

C# 如果ImageButton没有图像,则不会激发ImageButton事件?,c#,asp.net,C#,Asp.net,如果找不到ImageButton事件的图像,则不触发该事件是否属于正常行为。例如,假设我有以下代码: imageLink = new ImageButton(); imageLink.ImageUrl = "~/images/arrow.png"; 如果页面找到arrow.png,则图像单击有效,但如果未找到,则图像单击无效 这些映像是动态创建的,并分配了CommandName、CommandArgument和Click处理程序 void imageLink_Click(object send

如果找不到ImageButton事件的图像,则不触发该事件是否属于正常行为。例如,假设我有以下代码:

imageLink = new ImageButton();
imageLink.ImageUrl = "~/images/arrow.png";
如果页面找到arrow.png,则图像单击有效,但如果未找到,则图像单击无效

这些映像是动态创建的,并分配了CommandName、CommandArgument和Click处理程序

void imageLink_Click(object sender, ImageClickEventArgs e)
{
    ImageButton button = (ImageButton)sender;
    Detail oDetail = new Detail();

    switch(button.CommandName)
    {
        case "Band":
             oDetail.Band  = button.CommandArgument;
                break;
            case "State":
                oDetail.State = button.CommandArgument;
                break;
        }                    

        Session["Page2"] = oDetail;

        Response.Redirect("~/Page2.aspx");
    }

不,那不正常。我刚刚测试过,即使你从未设置过
ImageUrl
,按钮仍然会发回。您确定该问题与事件处理无关吗?

在某些情况下,它会发生 图像按钮事件在没有图像的情况下不会触发 任何人都知道这个问题背后的确切原因,
请在这里发帖

是的,没错。如果ImageButton没有声明ImageUrl,它将不会触发onclick事件。它将导致回发,但未触发事件

此代码不会触发事件

<asp:ImageButton ID="testImgBtn" ImageUrl="" runat="server" onclick="testImgBtn_Click" />

虽然这样做:

<asp:ImageButton ID="testImgBtn" ImageUrl="http://www.google.it/intl/en_en/images/logo.gif" runat="server" onclick="testImgBtn_Click" />


这是我的事件处理程序:imageLink。单击+=新建ImageClickEventHandler(imageLink\u单击);你能发布更多的代码吗?我特别感兴趣的是了解事件处理程序的附加位置(如ASP.NET生命周期的哪个部分)以及imageLink\u Click方法的外观。它在Page\u Load中创建事件。我将发布imageLink_Click的代码不幸的是,我没有答案,但我在.NET网站上的Firefox中看到了完全相同的事情。总是好奇地想知道这是否有解释。