2016-05-17 70 views
0

这是GridView代码:错误的GridView CS1061

<asp:GridView ID="datagrid" runat="server" CssClass="mydatagrid" PagerStyle-CssClass="pager" HeaderStyle-CssClass="header" RowStyle-CssClass="rows" AllowPaging="True" OnPageIndexChanging="datagrid_PageIndexChanging"> 
</asp:GridView> 

这是C#代码:

string str = "Data Source=(LocalDB)\\MSSQLLocalDB;"; 
str += "AttachDbFilename=|DataDirectory|DinoData.mdf;"; 
str += "Integrated Security= True"; 

SqlConnection c; 
c = new SqlConnection(str); 

DataTable dt = new DataTable(); 
String req = "SELECT * FROM [User]"; 
SqlDataAdapter da = new SqlDataAdapter(req, c); 
da.Fill(dt); 
datagrid.DataSource = dt; 
datagrid.DataBind(); 

错误:

Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

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

+0

那么你是否在代码中的任何地方声明了一个名为'datagrid_PageIndexChanging'的处理程序? –

+0

不,我不这么认为 –

回答

0

您在设置属性OnPageIndexChanging您asp至datagrid_PageIndexChanging表示将会有OnPageIndexChanging事件的处理程序。

如果你不在任何地方声明这个处理程序,你会得到这个编译器错误。因此,如果您不需要/需要该处理程序,请从asp:GridView标记中删除该属性。

+0

非常感谢! –

0

此消息总是能想出当你有这个在您的标记:

OnPageIndexChanging="datagrid_PageIndexChanging" 

但在代码中没有事件处理程序的背后(像这样):

protected void datagrid_PageIndexChanging(object sender, GridViewPageEventArgs e) 
    { 
     //Do something here to make it page, baby! 
    } 

所以,要么你删除来自标记的OnPageIndexChanging事件,或者在后面的代码中添加处理程序。