如何在没有自定义控件或单独字段的情况下获取TrackBar的旧值?

时间:2018-06-20 04:05:07

标签: winforms

我尝试在引发Value事件时获取TrackBar的旧Scroll。我可以通过创建一个单独的字段并在该值发生更改时存储该值来实现此目的,或者在自定义控件中覆盖该事件,但是,我已经在使用内置的TrackBar了,我宁愿不必重新设计我的表格。

Microsoft文档似乎对此没有任何信息,并且EventArgsOnScroll方法上的OnValueChanged参数似乎很通用。

有没有一种方法可以实现这一目标?

来源:

Microsoft Documentation: TrackBar.OnScroll Method

Microsoft Documentation: TrackBar.Scroll Event

How to override method and event in WinForm UserControl in C#?

Microsoft Documentation: TrackBar.ValueChanged Event

Microsoft Documentation: TrackBar.Value Property

Microsoft Documentation: TrackBar.OnValueChanged Method

1 个答案:

答案 0 :(得分:0)

我相信没有内置的方法可以实现您想要的。

要解决您对必须用派生的自定义控件替换表单上的所有TrackBar控件的担忧,这是我通常的操作方式:

  1. 创建继承TrackBar控件的控件类。
  2. 打开您的FormName.Designer.csFormName.Designer.vb文件。
  3. 单击 Ctrl + H 打开“查找并替换”窗口。
  4. 在“查找”字段中输入System.Windows.Forms.TrackBar,在“替换为”字段中输入YourNameSpace.CustomTrackBar
  5. 单击“全部替换”。(如果您害怕弄乱某些东西,可以一一完成)。
  6. 重建项目。

希望有帮助。