命令参数在运行时创建的imagebutton不工作

本文关键字:imagebutton 工作 创建 参数 运行时 命令 | 更新日期: 2023-09-27 18:09:54

你好,我正在创建一个新的图像按钮,就像这样;

e.row.cells[0].text= string.empty; //clearing the cells
Imagebutton img1= new ImageButton();
img1.Id="imgInput";
img1.ImageUrl="~/sample.jpg";
img1.CommandArgument= varID; // fetching the ID
img1.click+= new ImageClickEventHandler(imgInput_Click);
e.row.controls.add(img1)

我已经在gridview rowdatabound事件中编写了上述代码。

现在在click事件中(imgButton_Click;在最后第二行处理)我希望将命令参数值放在会话中;

protected void imgInput_Click(object sender, EventArgs e)
{
  Session["idvalue"]= imgInput.CommandArgument; 
}

但是这里的varID是null。为什么如此?我错过了什么?

请指导!由于

命令参数在运行时创建的imagebutton不工作

您需要使用ImageButton。命令事件。

例子:

  img1.Command += ImageButton_OnCommand;
  protected void ImageButton_Command(object sender, CommandEventArgs e) 
  {
     if (e.CommandName == "Sort" && e.CommandArgument == "Ascending")
        Label1.Text = "You clicked the Sort Ascending Button";
     else
        Label1.Text = "You clicked the Sort Descending Button";
  }