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,它能工作吗?我认为网格后面的一些控件与透明的按钮重叠。你能检查一下它们吗?为网格外的其他控件设置背景色。我检查过了,没有重叠。我为每个元素指定了网格行,我可以点击按钮。它有动画来表明这一点。所以按钮肯定会被点击。我已经试过了。同样的事情。但是,如果我添加了没有任何样式的按钮,它就会工作。原因似乎是样式。您应该发布它以获得进一步的帮助添加了为按钮创建的控件模板。