windows phone grid无法响应事件的问题
今天在做应用的时候,原本想做一个竖着放的控件,类似Button的效果
对每个这些,里面都是通过border套grid套textblock实现的
代码如下
<Border Width="100" Height="400" Margin="0,0,40,0" BorderThickness="6" BorderBrush="White"> <Grid Tap="OnSettingClicked"> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <TextBlock Text="设" Grid.Row="0" FontSize="32" HorizontalAlignment="Center" VerticalAlignment="Center"/> <TextBlock Text="置" Grid.Row="1" FontSize="32" HorizontalAlignment="Center" VerticalAlignment="Center"/> </Grid> </Border>
原本打算想再这些上面做一个tap的事件触发,但是发现只有点击textblock的时候事件才触发,点击border里面其他区域却不触发
上msdn social查看果然发现grid元素虽然继承UIElement,但是当背景画刷为空时,isHitTestable为false
解决此问题方法只需要把Grid的背景设置为transparent或者一些颜色即可