【发布时间】:2021-11-11 01:10:43
【问题描述】:
我想让它这样工作:当我写入 NumericUpDown 1k 时,值应该是 1000,当我写入 4M 时,值应该是 4000000。我该怎么做? 我试过这个:
private void NumericUpDown1_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyValue == (char)Keys.K)
{
NumericUpDown1.Value = NumericUpDown1.Value * 1000;
}
}
但它适用于我写的原始值。
我想让它像宏一样工作。例如,如果我想获得 NUD1.Value 1000,我写 1,然后,当我按 K 时,NUD1.Value 变为 1000。
【问题讨论】:
-
您不能使用
NumericUpDown控件来接受自然语言输入。我不相信您可以使用NumericUpDown将输入的"4K"转换为.Value = 4000。我想你必须为此使用单独的TextBox。 -
“但它适用于旧值,现在我写的是” 这是什么意思?
FrequencyCW是什么?您是否从另一个 NUP 控件获取值?旁注:不要将您的控件命名为NumericUpDown,因为这是类型名称,事情很快就会变得混乱。
标签: c# winforms numericupdown