private void numericUpDown1_ValueChanged(object sender, EventArgs e)
{
CloudEnteringAlert.tolerancenum = (int)numericUpDown1.Value;
pictureBox1.Image =CloudEnteringAlert.CloudsOnly(bitmapwithclouds,bitmapwithoutclouds);
}
当我使用鼠标更改numericupdown
值时,我会在pictureBox1
图像上看到效果。但是如果我在numericupdown中键入另一个值,为什么它不会改变pictureBox
中的任何值;使用键盘手动更改值时不会受到影响吗?
答案 0 :(得分:1)
解决方案是使用Textchanged而不仅仅是ValueChanged:
private void Form1_Load(object sender, EventArgs e)
{
numericUpDown1.TextChanged += new EventHandler(numericUpDown1_TextChanged);
}
void numericUpDown1_TextChanged(object sender, EventArgs e)
{
CloudEnteringAlert.tolerancenum = (int)numericUpDown1.Value;
pictureBox1.Image = CloudEnteringAlert.CloudsOnly(bitmapwithclouds, bitmapwithoutclouds);
}
答案 1 :(得分:0)
使用KeyUp事件进行数字更新。
在KeyUp事件中,通过
获取值
string str = numericUpdown1.Text;
答案 2 :(得分:-1)
您必须按回车键或移至其他控件或添加Key_Up / Key_Down / Key_Press事件
private void numericUpDown1_KeyPress(object sender, KeyPressEventArgs e)
{
numericUpDown1_ValueChanged(this.numericUpDown1, new EventArgs());
}