错误BC30456:'[方法]'不是'ASP.[CodeBehind] _aspx'的成员

Guy*_*Guy 5 vb.net asp.net web-applications visual-studio-2010

非常简单的问题.我很确定我有正确的Class,method,codebehind等链接.很多在线帖子说这​​与编译和/或dll/bin文件有关,但他们的帮助都没有对我有用.

Compiler Error Message: BC30456: 'gvLegs_PageIndexChanging' is not a member of 'ASP.nestedgridview_aspx'.

Source Error:

Line 43:    <asp:Label ID="lblEmpName" runat="server" Text='<%# Eval("Location")%>'></asp:Label>
Line 44:    <asp:Literal runat="server" ID="lit1" Text="</td><tr id='trCollapseGrid' style='display:none' ><td colspan='5'>" />
Line 45:    <asp:GridView ID="gvLegs" AutoGenerateColumns="False" runat="server" EnableViewState="False"
Line 46:    DataKeyNames="EmployeeId" ForeColor="#333333" PageSize="4" AllowPaging="True"
Line 47:    OnPageIndexChanging="gvLegs_PageIndexChanging">
Source File: C:\Users\tstanley\Desktop\NestedVB\NestedVB\NestedGridView.aspx    Line: 45 
Run Code Online (Sandbox Code Playgroud)

NestedGridView.aspx

<%@ Page Language="vb" AutoEventWireup="false" codebehind="NestedGridView.aspx.vb" Inherits="NestedVB.NestedGridViewPaging2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Run Code Online (Sandbox Code Playgroud)

NetedGridView.aspx.vb [代码背后] ......

 Private Sub gvLegs_PageIndexChanging(sender As Object, e As GridViewPageEventArgs)
Run Code Online (Sandbox Code Playgroud)

如果有人对此有一个解决方案,它会帮助我很大,所以我可以继续....调试实际的代码大声笑.

Tim*_*ter 10

gvLegs_PageIndexChanging 是私人的,但需要受到保护或公开.

由于您使用的是VB.NET,因此您也可以使用handle子句:

Private Sub gvLegs_PageIndexChanging(sender As Object, e As GridViewPageEventArgs) _
    Handles gvLegs.PageIndexChanging
End Sub
Run Code Online (Sandbox Code Playgroud)

编辑:为了清楚起见,ASP.NET中有三个用VB.NET创建事件处理程序的选项:

  1. 在aspx上声明性地说
  2. 在带有handle子句的代码中
  3. 使用AddHandler(主要用于VB.NET中的动态控件)

如果使用选项1,则事件处理程序必须至少受到保护,因为aspx页面继承自codebehind类.

如果使用选项2,则该方法可以是私有的,但您需要删除aspx上的声明性事件处理程序.