一个用户控件的问题?在线等!!!!!

TTOTT 2004-09-01 05:18:05
我做了一个网页,本来把代码写在一起的,想做到用用户控件分离,成功了一个,但下一个就出错了
代码如下:
html部分<hl:News id="NEWS" runat="server"/>

控件:
<%@ Control Language="C#"%>
<%@ import Namespace="System.Data" %>
<%@ import Namespace="System.Data.OleDb" %>
<asp:DataGrid Font-Name="宋体" Font-Size="16pt" id="DataGrid1" runat="server"

AllowPaging="True" PageSize="10" OnPageIndexChanged="DataGrid1_Page" BorderWidth="0px"

AutoGenerateColumns="False" >
<Columns>
<asp:HyperLinkColumn

DataNavigateUrlField="id" DataNavigateUrlFormatString="content.aspx?id={0}"

DataTextField="title" Target="_blank"></asp:HyperLinkColumn>
</Columns>
</asp:DataGrid>
<script language="c#">

void DataGrid1_Page(Object sender,DataGridPageChangedEventArgs e)

{
DataGrid1.CurrentPageIndex = e.NewPageIndex;



BindGrid();
}

void BindGrid()
{
string connew="Provider=Microsoft.Jet.OleDb.4.0;Data Source=fcjys.mdb";
string strSQL="SELECT * FROM news";
OleDbConnection con=new OleDbConnection(connew);
con.Open();
OleDbCommand com=new OleDbCommand(strSQL,con);
OleDbDataAdapter lawAdapter=new OleDbDataAdapter(com);
DataSet lawds=new DataSet();

lawAdapter.Fill(lawds);
con.Close( );
DataGrid1.DataSource=lawds;
DataGrid1.DataBind();
}
void Page_Load(Object sender,EventArgs e)
{
DataGrid1.PagerStyle.Mode = PagerMode.NumericPages;
if(!IsPostBack)
{

BindGrid();

}


}


</script>
错误:Compiler Error Message: CS0117: 'ASP.news_ascx' does not contain a definition for 'DataGrid1_Page'

这一行报错<asp:DataGrid Font-Name="宋体" Font-Size="16pt" id="DataGrid1" runat="server" AllowPaging="True" PageSize="10" OnPageIndexChanged="DataGrid1_Page" BorderWidth="0px" AutoGenerateColumns="False" >

...全文
120 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
TTOTT 2004-09-01
  • 打赏
  • 举报
回复
我把ASP.NET部分和HTML部分合在一起已经实现了功能了,现在想有用用户控件的方法分离,就出了上面说的问题,请大家先看完代码!!!!
TTOTT 2004-09-01
  • 打赏
  • 举报
回复
好的
rickjelly2004 2004-09-01
  • 打赏
  • 举报
回复
http://blog.csdn.net/rickjelly2004/archive/2004/03/24/22246.aspx

你看看我做的一个,是VB的
TTOTT 2004-09-01
  • 打赏
  • 举报
回复
我没有用后台编码呀,我用的是用户控件呀,用的是.ascx为后缀的方法,不是用的.cs为后缀的,麻烦大家再看清楚代码!!
rickjelly2004 2004-09-01
  • 打赏
  • 举报
回复
是不是DATAGRID1呀,你有没删除过呀,不行的话,你只能重新拖一下了,
goody9807 2004-09-01
  • 打赏
  • 举报
回复
没错 gshope(北京.Net) 说的对
TTOTT 2004-09-01
  • 打赏
  • 举报
回复
我用的是用户控件,.ascx为后缀的,定义了呀

void DataGrid1_Page(Object sender,DataGridPageChangedEventArgs e)

{
DataGrid1.CurrentPageIndex = e.NewPageIndex;



BindGrid();
}
gshope 2004-09-01
  • 打赏
  • 举报
回复
也可能是没有事件关联。
在设计状态,右点DataGrid,选属性,选事件,把DataGrid1_Page填写到nPageIndexChanged事件中。
pingnt 2004-09-01
  • 打赏
  • 举报
回复
void DataGrid1_Page(Object sender,DataGridPageChangedEventArgs e) handler datagrid1.onpageindexchanged
VB中是这样的代码,C#中这参考一下.
gshope 2004-09-01
  • 打赏
  • 举报
回复
说的很清楚呀,你定义了分页方法是DataGrid1_Page(),但是在后台.cs里一定是没有定义这个方法。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧