Xaml 按钮单击事件赢得';不要在WP8中开火
我有一个这样的布局Xaml 按钮单击事件赢得';不要在WP8中开火,xaml,windows-phone-8,windows-phone,Xaml,Windows Phone 8,Windows Phone,我有一个这样的布局 <Grid Grid.Row="4" HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Name="gridTestAd" Height="80" Margin="-12,0,-12,0" > <StackPanel Orientation="Vertical" Tap="StackPanel_Tap">
<Grid Grid.Row="4" HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Name="gridTestAd" Height="80" Margin="-12,0,-12,0" >
<StackPanel Orientation="Vertical" Tap="StackPanel_Tap">
<StackPanel.Background>
<ImageBrush ImageSource="/Assets/image.jpg" />
</StackPanel.Background>
</StackPanel>
<adduplex:AdControl x:Name="adDuplexAd" AppId="123456"/>
<Button Name="btnRemoveAd" Content="X" Height="40" Width="40" HorizontalAlignment="Right" VerticalAlignment="Top" Background="Red" BorderBrush="Red" Foreground="White" Template="{StaticResource RemoveAdsButtonStyle}" Margin="0,-20,6,0" Click="btnRemoveAd_Click" />
</Grid>
我在btnRemoveAd_Click事件中设置了断点,但当我点击按钮时,Click事件将不会触发。最初,我使用图像创建了一个自定义按钮,但这也不起作用。此按钮使用“混合”进行轻微编辑,因为它太小且内容不显示。但仅更改原始按钮的边距。我已经搜索了原因,但没有找到任何原因,我也无法理解。有什么问题吗?请帮忙
按钮的控件模板
<ControlTemplate x:Key="RemoveAdsButtonStyle" TargetType="Button">
<Grid>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualStateGroup.Transitions>
<VisualTransition From="Normal" GeneratedDuration="0:0:0.25" To="Pressed">
<VisualTransition.GeneratedEasingFunction>
<CircleEase EasingMode="EaseIn"/>
</VisualTransition.GeneratedEasingFunction>
</VisualTransition>
</VisualStateGroup.Transitions>
<VisualState x:Name="Normal"/>
<VisualState x:Name="MouseOver"/>
<VisualState x:Name="Pressed">
<Storyboard>
<DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="rectangle" d:IsOptimized="True"/>
<DoubleAnimation Duration="0" To="0" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="rectangle1" d:IsOptimized="True"/>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled"/>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle x:Name="rectangle1" StrokeThickness="0">
<Rectangle.Fill>
<ImageBrush Stretch="Fill" ImageSource="/Assets/img/close_small.png"/>
</Rectangle.Fill>
</Rectangle>
<Rectangle x:Name="rectangle" StrokeThickness="0" Opacity="0">
<Rectangle.Fill>
<ImageBrush Stretch="Fill" ImageSource="/Assets/img/close_small_presses.png"/>
</Rectangle.Fill>
</Rectangle>
</Grid>
</ControlTemplate>
另一个控件可能与按钮重叠并捕获事件。如果你移除StackPanel和AdControl,它能工作吗?我认为网格后面的一些控件与透明的按钮重叠。你能检查一下它们吗?为网格外的其他控件设置背景色。我检查过了,没有重叠。我为每个元素指定了网格行,我可以点击按钮。它有动画来表明这一点。所以按钮肯定会被点击。我已经试过了。同样的事情。但是,如果我添加了没有任何样式的按钮,它就会工作。原因似乎是样式。您应该发布它以获得进一步的帮助添加了为按钮创建的控件模板。