繁体   English   中英

ASP按钮找不到事件处理程序

[英]Asp button can't find eventhandler

我在使用ASP在按钮上注册事件时遇到问题。 它给了我错误:

CS1061: 'ASP.permissions_aspx' does not contain a definition for 'CreateEndUserClick' and no extension method 'CreateEndUserClick' accepting a first argument of type 'ASP.permissions_aspx' could be found (are you missing a using directive or an assembly reference?)

当我在浏览器中访问该页面时,它仍然可以成功编译。 基本上,它找不到onclick处理程序,但是我不知道为什么。

这是我的asp文件Permissions.aspx:

<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/MainLayout.master" AutoEventWireup="True"  CodeBehind="Permissions.aspx.cs" Inherits="WebProj._Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
    <asp:Button ID="Button_CreateEndUser" runat="server" OnClick="CreateEndUserClick" Text="Create New End User/Group" />
</asp:Content>

我显然删除了页面中的一些不相关元素。

而我的代码隐藏文件Permissions.aspx.cs:

namespace WebProj
{
    public partial class Permissions : System.Web.UI.Page
    {
        protected global::System.Web.UI.WebControls.Button Button_CreateEndUser;

        protected void Page_Load(object sender, EventArgs e)
        {
        }

        protected void CreateEndUserClick(object sender, EventArgs e)
        {
            Button_CreateEndUser.Text = "Hamstertext";
        }
    }
}

我不确定为什么找不到该功能。 可能是因为我使用内容标签将其放置在主文件中吗?

我非常感谢您提供任何帮助或指出正确的方法来解决此问题。

谢谢你的时间!

在您的Page指令中,尝试更正Inherits属性:

Inherits="WebProj.Permissions"

此属性应包含类背后的代码名称,在您的情况下为WebProj.Permissions (而不是WebProj._Default )。 请注意,此处指定的类应在CodeBehind属性(在您的情况下为Permissions.aspx.cs中指定的文件中定义。

您必须使用

    Inherits="WebProj.Permissions" 

原因是,您具有名称空间WebProj类Permissions 所以继承必须使用相同的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM