【发布时间】:2021-01-31 17:13:17
【问题描述】:
我在 WinForms 中使用 C# 来使用轨迹栏,如下所示。在代码的开头我定义了事件处理程序:
this.trackBar1.Scroll += new System.EventHandler(this.trackBar1_Scroll);
这是滚动轨迹栏时的实现:
private void trackBar1_Scroll(object sender, EventArgs e)
{
//do something...
}
所以这行得通,但我需要从另一个事件处理程序内部调用上述函数,例如:
public void numericUpDown1_TextChanged(object sender, EventArgs e)
{
//what to do here to call trackBar1_Scroll ?
}
如何从 numericUpDown1_TextChanged 内部调用 trackBar1_Scroll?
【问题讨论】:
-
您想要类似:
trackBar1_Scroll(trackBar1, EventArgs.Empty)或trackBar1_Scroll(numericUpDown1, EventArgs.Empty)或trackBar1_Scroll(null, null)吗? -
trackBar1_Scroll(null, null) 就足够了
-
@Steve 那没用。我已经试过了。它移动轨迹栏,但不调用 trackBar1_Scroll。
-
是检查。但是如何编写一个可从 Scroll 事件和 TextChanged 事件调用的通用方法呢?
-
@Steve 你的意思是添加到 this.trackBar1.Scroll += new System.EventHandler(this.trackBar1_Scroll); ?我实际上不知道如何实现它以从两者调用。
标签: c# .net winforms event-handling