如何处理此错误:“SQLDisplay_Date_records”没有重载与委托“系统.事件处理程序”匹配

本文关键字:重载 匹配 程序 事件处理 系统 Date 处理 何处理 SQLDisplay 错误 records | 更新日期: 2023-09-27 17:57:14

所以我基本上在aspx文件中有两个文本框,它们由日期填充(使用jquery日期选择器),如下所示

Start Date: <asp:TextBox ID="TxtDatepicker_start" runat="server" Width = 125px >
  </asp:TextBox>
  &nbsp;&nbsp;End Date: <asp:TextBox ID="TxtDatepicker_end" runat="server" Width = 125px >
  </asp:TextBox>
  &nbsp;&nbsp;&nbsp;&nbsp;<asp:Button ID="Button_daterecords" runat="server"  Text="Show records"  OnClick ="SQLDisplay_Date_records" /><br />

但是,当我尝试确定文本框中存储的内容以使用此函数在代码后面进一步处理时

protected void SQLDisplay_Date_records()
        {
            string date1 = TxtDatepicker_end.Text;
            string date2 = TxtDatepicker_end.Text;
        }

我收到此错误

No overload for 'SQLDisplay_Date_records' matches delegate 'System.EventHandler'

有人可以向我解释一下,我为幼稚的问题道歉,但我仍在使用 ASP.NET 和 C#

如何处理此错误:“SQLDisplay_Date_records”没有重载与委托“系统.事件处理程序”匹配

疯狂猜测,OnClick是一个事件。 它有一个对象(源)和事件参数。

尝试将其设置为

Protected void SQLDisplay_Date_records(object sender, EventArgs e)
{
    string date 1 = TxtDatepicker_end.Text;
    string date 2 = TxtDatepicker_end.Text;
}

您的方法签名不正确。

protected void SQLDisplay_Date_records()

应该protected void SQLDisplay_Date_records(object sender, EventArgs e)

因为它是一个OnClick事件,它应该将事件参数作为参数。