Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 链接按钮控件中是否缺少OnClick?_C#_Asp.net - Fatal编程技术网

C# 链接按钮控件中是否缺少OnClick?

C# 链接按钮控件中是否缺少OnClick?,c#,asp.net,C#,Asp.net,我试图从我点击的链接按钮中获取ProductID,但是我找不到OnClick选项,只有OnClientClick,但它不起作用,有其他方法吗 protected void Page_Load(object sender, EventArgs e) { DataTable table = CategoryAccess.GetAllProducts(); for (int i = 0; i < table.Rows.Count; i++) { Link

我试图从我点击的链接按钮中获取ProductID,但是我找不到OnClick选项,只有OnClientClick,但它不起作用,有其他方法吗

protected void Page_Load(object sender, EventArgs e)
{
    DataTable table = CategoryAccess.GetAllProducts();

    for (int i = 0; i < table.Rows.Count; i++)
    {
        LinkButton lbDelete = new LinkButton();
        lbDelete.Text = table.Rows[i]["ProductName"].ToString();
        lbDelete.ID = table.Rows[i]["ProductID"].ToString();
        lbDelete.CommandArgument = table.Rows[i]["ProductID"].ToString();
        lbDelete.OnClientClick = "btnDelete_Click";


        phDelete.Controls.Add(lbDelete);
     }
 }

    protected void btnDelete_Click(object sender, EventArgs e)
    {
        LinkButton _sender = (LinkButton)sender;
        string TrixID = _sender.CommandArgument;

        DeleteProduct(ProductID);
    }
受保护的无效页面加载(对象发送方,事件参数e)
{
DataTable=CategoryAccess.GetAllProducts();
for(int i=0;i
嗯,我想我明白你在做什么,但我用了一种有趣的方式

我通常做的是定义rowcommand事件。我添加commandargs=''(或者类似的东西)并将其传递给rowcommand事件,然后获取e.commandargs并使用该值删除数据库行

这是我所说的许多例子中的一个


如果这没有帮助,很抱歉。

您需要了解并使用事件处理程序。但是您的代码对ASP.NET.aspx中的Repeater对象调用更多。对于网格来说更是如此。是的,我知道如何在中继器中执行此操作,但当我在codebehind中找不到OnClick事件时,我想我错过了一些东西。我不敢相信你已经找到了
OnClientClick
,但你还没有在
LinkButton
中找到
Click
事件(?)是的,我也找到了,如果使用“单击”,则会出现错误:“单击”事件只能出现在+=或的左侧-=