在 C# 中是否存在值增加的 numericupdown 事件

Is there a numericupdown event for value increasing in c#

我需要一个在按下向上箭头时发生的事件和另一个在按下向下箭头时发生的事件。有这个事件处理程序吗?我能找到的只是 valuechanged?

简短的回答是没有,没有这样的事件。 但是,很容易检查它是增加还是减少价值。例如,如果您将 numericupdown 的值绑定到视图模型中的 属性,您可以这样做:

private int upDownValue;

public int UpDownValue
{
    get{ return this.upDownValue; }
    set
    {
        if(value > this.upDownValue)
        {
             //It increased
        }

        if(value < this.upDownValue)
        {
            //It decreased
        }

        this.upDownValue = value;
    }
}
Decimal OldValue;
private void NumericUpDown1_Click(Object sender, EventArgs e) {

   if (NumericUpDown1.Value>OldValue)
      {
         ///value increased, handle accordingly
      }
    else if (NumericUpDown1.Value<OldValue)
      {
        ///value decreased, handle accordingly
      }
    else
      {
        return;
      }
 OldValue=NumericUpDown1.Value;
}

如果您使用 Mahapps 框架中的 NumericUpDown,您可以使用 ValueIncremented 和 ValueDecremented 事件。