我在这里有这段 XAML 代码:
<ToggleButton x:Name="ColorPickerButton"
Content="Button" HorizontalAlignment="Left" VerticalAlignment="Top" Style="{StaticResource Segment0}"
Checked="ColorPickerChecked"
Unchecked="ColorPickerUnchecked">
<ToggleButton.Transitions>
<TransitionCollection>
<EntranceThemeTransition FromHorizontalOffset="100" FromVerticalOffset="100"/>
</TransitionCollection>
</ToggleButton.Transitions>
</ToggleButton>
它在我的电脑上运行良好;并且工作正常是指方法ColorPickerChecked
,并且ColorPickerUnchecked
在我单击ToggleButton
. 但是,在触摸设备(Microsoft Surface)上,根本不会调用这些方法。但是,Tapped
如果我将其添加到 XAML 中,则会正确引发该事件。Tapped
现在,这是引发事件时调用的方法:
private void ColorPickerButton_Tapped(object sender, TappedRoutedEventArgs e)
{
var s = sender as ToggleButton;
if(s != null)
s.IsChecked = !s.IsChecked;
}
我觉得有点草率。为什么它的行为不同?我在这里缺少什么吗?我记得ToggleButton
在其他应用程序中使用它,在我的记忆中它似乎工作正常......但不是在这里!
干杯