我想问一下,当我点击数字向上控制中的向上/向下按钮时,如何增加或减少时间间隔(一半和一小时)。
答案 0 :(得分:2)
NumericUpDown控件不支持时间。但是,如果要将其值用作分钟数,则可以将其Increment属性设置为30。
NumericUpDown.Increment Property
获取或设置增加或减少旋转框的值(同样 单击向上或向下按钮时,称为“向上控制”。
单击向上按钮会使Value属性增加 由Increment属性指定的数量并接近最大值 属性。单击向下按钮将导致Value属性 递减递增属性指定的数量和 接近最小属性。
答案 1 :(得分:0)
这是一个NumericUpDown,它只允许你拥有整数和一半的值:
public class HalfHourNumericUpDown : NumericUpDown
{
public HalfHourNumericUpDown()
{
this.DecimalPlaces = 1;
}
public override void UpButton()
{
if (this.Value <= this.Maximum - (decimal).5)
this.Value = this.Value + (decimal).5;
else
this.Value = this.Maximum;
this.RoundToHalf();
}
public override void DownButton()
{
if (this.Value >= (decimal).5)
this.Value = this.Value - (decimal).5;
else
this.Value = this.Minimum;
this.RoundToHalf();
}
protected override void UpdateEditText()
{
base.UpdateEditText();
this.RoundToHalf();
}
private void RoundToHalf()
{
decimal value = this.Value;
value = value * 2;
value = Math.Round(value, MidpointRounding.AwayFromZero);
value = value / (decimal)2;
this.Value = Math.Min(this.Maximum, Math.Max(value, this.Minimum));
}
}