【问题标题】:Control Currently Click控制当前点击
【发布时间】:2010-11-29 23:57:35
【问题描述】:

我创建了一些代码,可以动态生成一堆不同的链接按钮。我有每个链接按钮的 onClick 甚至指向:

  void LinkButton_Click(object sender, EventArgs e) 
  {
     Response.Write("You clicked the link button");
  }

这运行良好,但现在当点击其中一个链接按钮时,我想获取它的 ID 并将其发送到另一个函数。

任何帮助将不胜感激。

马特

【问题讨论】:

    标签: asp.net dynamic controls


    【解决方案1】:

    您需要将sender 转换为特定类型的控件,如:

    void LinkButton_Click(Object sender, EventArgs e) 
    {
      LinkButton button = sender as LinkButton;
    
      if(button != null)
      {
        //do something
      }
    
      Response.Write("You clicked the link button";  
    }
    

    as 运算符将尝试将sender 转换为类型LinkButton。如果这不成功,局部变量button 将被设置为null。请注意,这与 (LinkButton)sender 的行为不同,如果类型转换不合适,则会引发异常。

    【讨论】:

    • 太棒了,谢谢伙计。我之前在玩 (LinkBut​​ton)sender!
    • bExplosion:很划算。只是为了添加到讨论中,您也可以将 sender 转换为 WebControl。如果您打算让不止一种类型的服务器控件触发此事件,这将很有帮助。为此,所有控件都需要从 WebControl 扩展(大多数都这样做)。
    猜你喜欢
    • 1970-01-01
    • 2012-05-09
    • 2013-04-05
    • 2018-11-14
    • 1970-01-01
    • 1970-01-01
    • 2016-11-18
    • 2020-12-01
    • 1970-01-01
    相关资源
    最近更新 更多