在Delphi Prism的同一窗口窗口中调用事件

时间:2011-08-30 19:28:53

标签: events listbox click delphi-prism

我试图从同一个Window Form文件中的另一个方法中调用click事件。它只是不适合我。

例如:

  theClass = partial class(System.Windows.Forms.Form)
    method AlarmListBox_Click(sender: System.Object; e: System.EventArgs);  
  private
  protected
  public
    method DoSomething;
  end;

  method theClass.DoSomething;
  begin
    self.AlarmListBox_Click; <<<this is where i want to call the click event
  end;

无论我做什么,都会不断引发编译错误。我尝试了AlarmListBox.Click,AlarmListBox.performClick等

我得到的一些错误:

  1. 没有重载方法“AlarmListBox_Click”为0 参数。
  2. 无法访问基础事件字段
  3. 那么,你如何在同一个窗口窗口中触发一个事件?

2 个答案:

答案 0 :(得分:1)

最好使用默认参数调用Event处理程序:

AlarmListBox_Click(self, EventArgs.Empty);

通过将self传递给方法,您可以定义调用源不是AlarmListBox而是表单。你也可以传入自定义的EventArgs,它说明由于点击了AlarmListBox但是你的代码没有引发事件。

答案 1 :(得分:0)

您没有传递方法AlarmListBox_Click

的参数

试试这个

AlarmListBox_Click(nil, nil);