方法与委托不匹配
private void InitializeComponent()
{
this.LinkNextPage1.Click += new System.EventHandler(this.NavigateToPage1);
this.LinkLastPage1.Click += new System.EventHandler(this.NavigateToPage1);
this.LinkFirstPage1.Click += new System.EventHandler(this.NavigateToPage1);
}
private void NavigateToPage1(object sender, System.EventArgs e,DataGrid DataGrids)
{string PageInfo = ((LinkButton)sender).CommandName;
switch (PageInfo)
{
case "First ":
DataGrids.CurrentPageIndex = 0;
break;
case "pre ":
if (DataGrids.CurrentPageIndex > 0)
DataGrids.CurrentPageIndex -= 1;
break;
case "Next ":
if(DataGrids.CurrentPageIndex < (DataGrids.PageCount - 1))
DataGrids.CurrentPageIndex += 1;
break;
ase "last ":
DataGrids.CurrentPageIndex = (DataGrids.PageCount - 1);
break;
}
}
抱错:
C:\Inetpub\wwwroot\HuaSoftDRP\mdgl\mdpsgl\psshqr.aspx.cs(84): 方法“HuaSoftDRP.zbpsgl.psshqr.NavigateToPage1(object, System.EventArgs, System.Web.UI.WebControls.DataGrid)”与委托“void System.EventHandler(object, System.EventArgs)”不匹配
问题:
在保留自定义函数NavigateToPage1()的参数不变,又要不出错
即在InitializeComponent()中调用NavigateToPage1()不会出错
------解决方案--------------------sf
------解决方案--------------------NavigateToPage1 参数不改变,就不能加到 click 事件上
------解决方案--------------------this.LinkFirstPage1.Click += new System.EventHandler(this.NavigateToPage1(object sender, System.EventArgs e,DataGrid DataGrids));
------解决方案--------------------不匹配 把它搞匹配就得了 看怎么能搞匹配 就怎么搞咯
------解决方案--------------------HuaSoftDRP.zbpsgl.psshqr.NavigateToPage1(object, System.EventArgs, System.Web.UI.WebControls.DataGrid)”与委托“void System.EventHandler(object, System.EventArgs)”不匹配 若要 NavigateToPage1 参数不改变 就写个委托继承System.EventHandler
------解决方案--------------------Click需要的委托的参数是(object sender, System.EventArgs e)
NavigateToPage1提供的是(object sender, System.EventArgs e,DataGrid DataGrids)
多了一个DataGrid,所以不匹配。
要不使用自定义的事件,在Click的委托中执行
private void LinkNextPage1_Click(object sender, System.EventArgs e)
{
//得到DataGrids
DataGrid DataGrids = new DataGrids();
//触发自定义事件
MyNevigateEvent(sender, e, DataGrids);
}
------解决方案--------------------EventHandler 2个参数
你这里3个参数,当然不匹配。
把DataGrid DataGrids去掉。
------解决方案--------------------hoho