我只是想在IsEnabled变为false时将xaml中NumericUpDown元素的值重置为0,但是检查IsEnabled更改不是路由事件。这是我目前无法使用的内容,因为此事件不是路由事件
我的XAML代码:
<CheckBox Name="AirportTemplate">Airport</CheckBox>
<NumericUpDown Name="AirportToGen"
Width="300"
Minimum="0"
IsEnabled="{Binding ElementName=AirportTemplate, Path=IsChecked}"
IsEnabledChanged="ResetValueAirport"/>
我的C#背后的代码
private void ResetValueAirport(object sender, EventArgs e)
{
if (!AirportToGen.IsEnabled)
{
AirportToGen.Value = 0;
}
}
答案 0 :(得分:0)
我猜您正在使用扩展的WPF工具包中的NumericUpDown
类,在这种情况下,IsEnabledChanged
事件需要带有签名private void handler(object sender, DependencyPropertyChangedEventArgs e)
的处理程序。因此,请在后面的代码中改用以下代码:
private void ResetValueAirport(object sender, System.Windows.DependencyPropertyChangedEventArgs e)
{
if (!AirportToGen.IsEnabled)
{
AirportToGen.Value = 0;
}
}