我使用Silverlight控件工具包中的NumericUpDown控件,它有时会在一次更新中双击ValueChanging事件(单击上一个或下一个按钮)。有没有人知道这种行为的任何workarround?Silverlight NumericUpDown ValueChanging两次触发
更多信息:
我有下面的XAML代码:
<StackPanel>
<toolkit:NumericUpDown Name="numericUpDown1"
Width="35"
Minimum="0"
Maximum="3"
ValueChanging="valueChanging" />
<toolkit:NumericUpDown Name="numericUpDown2"
Width="35"
Minimum="0"
Maximum="3"
ValueChanging="valueChanging" />
<toolkit:NumericUpDown Name="numericUpDown3"
Width="35"
Minimum="0"
Maximum="3"
ValueChanging="valueChanging" />
</StackPanel>
和代码的事件:
private void valueChanging(object sender, RoutedPropertyChangingEventArgs<double> e)
{
if (numericUpDown1.Value + numericUpDown2.Value + numericUpDown3.Value > 3)
{
e.Cancel = true;
MessageBox.Show("No more than 3 in total");
}
}
的错误出现不是所有的时间,但有些时候该事件被激发两次,并且即使当我刚刚总共有3 ... (即并非所有时间都发生)时,警报也会出现: 增加到2第一个,然后到第二个,第一个到第三个。显示一条消息并且它是正确的。将firt降低到1,并且如果将第三个增加到1,则会触发该消息,因为事件被两次触发......(再次,并非所有这一切都发生)
我无法重现此问题,您能否提供更多详细信息。 – AnthonyWJones 2011-03-11 09:31:13
信息扩展与更多的信息,在此先感谢。 – KodiakMx 2011-03-11 18:27:32
感谢安东尼为那个版本:) – KodiakMx 2011-03-11 19:17:05